Архив за месяц: Сентябрь 2012

Как открыть iso файл





Хотел бы написать как открыть iso файл не скачивая никаких дополнительных программ. Конечно можно открыть его при помощи DAEMON Tools  или других программ, но можно открыть при помощи обычного архиватора winrar

Для того, чтобы открыть iso файл через winrar, если в параметрах Winrar-а установлена галочка «Асоциировать WinRar c ISO»

Читать далее

Как поставить виртуальную машину для запуска браузеров





Как поднять виртуальные машины (способ 1).

  1. Скачиваем образы которые нужны (IE6 IE7 IE8 IE9)
    http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11575
  2. Разархивируем но не используем эти образы,
    вместо этого копируем их куда-нибудь.
  3. Те образы которые скопировали,те и запускаем,и пользуемся снова ими 30дней.
  4. Как только срок заканчивается, удаляем используемые образы и снова копируем со скаченных ранее
    В итоге пользуемся постоянно по 30дней снова и снова=)

Читать далее

xpath и css локаторы





Про xpath- и css-локаторы можно почитать на страничке :

http://seleniumhq.org/docs/appendix_locating_techniques.html#starting-to-use-css-instead-of-xpath

Коротко говоря xpath- и css-локаторы — это два различных типов локаторов для идентификации объектов на веб-странице.

css-локаторы идентифицируют элементы быстрее, но xpath-локаторы надежнее, поэтому во всех автотестах было решено использовать xpath-локаторы.

Для правильного определения и написания xpath локаторов нам поможет firebug (http://firebug.ru/) и плагин для него FireFinder (https://addons.mozilla.org/en-US/firefox/addon/firefinder-for-firebug/)

Устанавливаем firebug и FireFinder.

Заходим на страницу mamba.ru Нажимаем правой кнопкой мыши по ссылке «Вход» — «Аанализировать элемент» Копируем ссылку и получаем следующее:

Вход

В Xpath это будет выглядеть так //a[contains(@class, ‘o-auth’)] ( тег, класс и название класса). (Примечание: можно использовать class, а любой параметр для тега. Например, //a[contains(@href, ‘/?tip=Login’) — нахождение ссылки по уникальному содержимому в ней)

Для CCS-локатора это будет выглядеть как «a.o-auth». Использовать следует следующим образом driver.findElement(By.cssSelector(«a.o-auth»);

Далее в firebug заходим на вкладку Firefinder в поле вставляем наш xpath: //a[contains(@class, ‘o-auth’)] нажимаем «Filter» и получаем следующую ссылку:

Отсюда вывод, что наш xpath верен.

В заключении надо сказать о частных локаторах: id и name. Они являются уникальными для элемента, поэтому поиск по ним происходит значительно быстрее. К сожалению, они есть далеко не всегда.

Формат команды driver.findElement(By.id(«id»)); и driver.findElement (By.name(«name»));

Например, driver.findElement(By.name(«submit_login»)); для кнопки «Войти» на лаере авторизации.
driver.findElement(By.id(«auth:email»)); для поля ввода e-mail на лаере авторизации.
В дальнейшем я еще буду писать подробные статьи о работе с xpath и css



Задрало NoSuchElementException в Selenium WebDriver





Сегодня 22.09.2011, в этот прекрасный выходной день, я решил поработать и позапускать своей автотесты на java в версии фаерофокса 15.0.1 с последней версией selenium-server-standalone-2.25.0.jar

И что же я замечаю, а я замечаю что чуть ли не половина моих тестов падает, на элементах, локаторы которых находятся правильно и всю жизнь находились правильно, но тут не с того ни с сего все падают с ошибкой:

org.openqa.selenium.NoSuchElementException: Unable to locate element: {«method»:»css selector»,»selector»:»div#NewFolders»}
Command duration or timeout: 30.12 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: ‘2.25.0’, revision: ‘17482’, time: ‘2012-07-18 21:08:56’
System info: os.name: ‘Windows 7’, os.arch: ‘amd64’, os.version: ‘6.1’, java.version: ‘1.6.0_26’
Driver info: driver.version: RemoteWebDriver
Session ID: 4ee39de5-9dcd-4e4f-866f-51f31f0d99d6

И т д

Запустил все «проблемные» тесты в хроме и все они идеально прошли. Меня уже просто задрало, что с выходом новой версии фаерфокса селениум перестает нормально работать, почему с хромом нет таких проблем? Вывод: запускайте автотесты в хроме и не партесь.



Как установить Groovy консоль.





Что такое Groovy я писать не буду, об этом вы сможете прочитать в wikipedia. Скажу только, что Groovy позволяет писать код на Java без лишних оберток, в стиле Ruby или Python. Но я буду рассказывать здесь не про сам язык Groovy, а про установку Groovy консоли, которая позволяет отлаживать автотесты написанные на java. B в groovy консоли это действительно очень удобно делать.

Для начала скачаем бинарный дистрибутив с официального сайта Groovy http://groovy.codehaus.org/Download

На момент написания статьи это Groovy 2.0.4

Для того, чтобы у вас работал Groovy, вам необходимо поставить java на свой компьютер, об этом я писал в статье «Установка JAVA. Отличие JDK от JRE»

Распаковываем архив и переносим папку groovy-2.0.4 в удобное нам место, у меня это диск C

Далее необходимо прописать все необходимые переменные окружения.

Для этого (В windows 7) Щелкаем правой кнопкой мыши на «Мой компьютер» — «Свойства» —

«Дополнительные параметры системы» —- переключаемся на вкладку «Дполнительно» —- нажимаем на «Переменные среды» в открывшемся окне в «системные переменные» нажимаем «Создать», в имя переменной пишем GROOVY_HOME  в значении переменной C:\groovy-2.0.4 ( указываем путь куда вы перенесли папку groovy-2.0.4) Нажимаем «Ок»

 

Далее  ищем в списке системных переменных, переменную «Path» щелкаем по ней, вписываем туда дополнительный путь  » C:\groovy-2.0.4\bin», нажимаем «Ок»

 

Все, установка Groovy консоли завершена. Теперь чтобы открыть нашу Groovy консоль необходимо нажать «Пуск» — в поле «Найти программы и файлы» ввести «cmd»— нажать на найденный файл cmd.exe

В обработчике команд перейти на C:\groovy-2.0.4\, ввести команду groovyConsole, нажать Enter

 

и у вас откроется вот такая симпатичная консолька.

На этом все, как пользоваться самой groovy консолью вы можете посмотреть в этом видео от Алексея Баранцева:

 





Хостинг, который я юзаю




Хостинг от TimeWeb это пожалуй лучший хостинг, которым я когда либо пользовался по соотношению цены и качества.

Мини обзор хостингов, которыми я пользовался до этого.

Хостинг от SprintHost —  дешевый, но крайне не удобный хостинг, панель управления мне не понравилась, поддержка не спешит отвечать на вопросы

Хостинг от AGAVA —  в принципе ничего не могу сказать плохого по поводу этого хостинга, единственным недостатком, когда я последний раз пользовался данным хостингом в году так 2007 — это цена.

2000МБ диского пространства и возможность размещения не более 4 сайтов мне обходилась около 400р в месяц, что я считаю весьма дорого. Хотя сейчас  насколько я знаю тарифы уже другие и можно вполне подобрать для себя подходящий вариант.

Хостинг от locum —  никогда не пользуйтесь этим хостингом, так это полная лажа, поддержка ужасная, внутри хостинга нет поддержки никакой cms. Панель управления крайней не удобная. Единственный плюс это цена, но как говорится скупой платит дважды.

Хостинг от TimeWeb

Я пользуюсь хостингом уже второй год и пока что ни разу  у меня не возникало никаких проблем. Поддержка хостинга очень дружелюбная, я много раз звонил и писал письма как по поводу самого хостинга TimeWeb, так и по поводу партнерской программы, ответы всегда давались фактически мгновенно как по телефону так и в письменной форме. Панель управления очень удобная и радует глаз, даже полный новичек разберется, как зарегистрировать через нее домен, создать сайт и привязать к сайту ( если будут какие то вопросы, обращайтесь)

Ниже прикладываю мою панель управления

 

В самой панели очень удобный конструктор сайтов, который позволяет прямо через хостинг поставить на сайт любую cms как платную так  и бесплатную.

 

 

Есть возможность тестового бесплатного 10 дневного периода пользования хостингом, за это время можно оценить все преимущество TimeWeb.

Выгодные тарифы.

Также есть разнообразные бонусы, при оплате хостинга на год, вам бесплатно регистрируется домен в зоне ru. Если вы установите через хостинг платную cms, то вы можете выбрать любой тарифный план для хостинга на год абсолютно бесплатно. Вообщем пользуйтесь хостингом от Timeweb.




Как я использую регулярные выражения в своих автотестах





Встала передо мной как то задача, в автотестах сделать отображение на определенной странице определеных цифр
А именно на сайте есть примерно 15-20 лаеров, где мне необхоимдо проверить присутствие в одном поле цифр 5554 или 5111 или 1055 цифры всегда разные, а в другом  99+5454878787 или 93+48976564564  или 91+65656598 и т д

В итоге на каждый странице каждый текст с цифрами я решил проверять через регулярное выражение.

Через http://gskinner.com/RegExr/
Под первую строчку делаем регулярку 99\+\d{5,}
Под вторую \d{4}

Тест в java при помощи WebDriver я проверяю как

assertTrue(findElement(By.tagName(«body»)).getText().contains(«текст»));

(Если вы проверяйте как-то по-другому, то напишите, очень интересно)

В Java при проверке каждого лаера я попытался сделать проверку через регулярные выражения следующее:
assertTrue(findElement(By.tagName(«body»)).getText().

contains(«93\\+\\d{5,}»)); //+экранируем
assertTrue(findElement(By.tagName(«body»)).getText().

contains(«\\d{4}»));

Но автотест падал на этих же строчках, тогда добрые люди мне подсказали, что

Сontains это не для проверки на соответствие регулярному выражению, это просто проверка подстроки и для регулярных выражений нет матчера стандартного и посоветовали используать вот эту дополнительную библиотеку: https://code.google.com/p/hamcrest-text-patterns/

(Кстати я ее так и не использовал, кто использовал, дайте знать)

Я сделал так:

String text = findElement(By.cssSelector(«var.sms-text»)).getText();
Pattern p = Pattern.compile(«93\\+\\d{5,}»);
Matcher m = p.matcher(text);
if (m.matches()) {
System.out.println(text);
};

String text1 = findElement(By.cssSelector(«div.fl-r div.numberHint+span»)).getText();
Pattern p1 = Pattern.compile(«\\d{4}»);
Matcher m1 = p1.matcher(text1);
if (m1.matches()) {
System.out.println(text1);
};

Хотя, если бы не было полей, откуда я бы мог gettext()-ом вытащить нужные мне значения, то тогда пришлось бы заморочиться.



Видеоуроки по PHP





Видео уроки по PHP

Начну я с того, что давным давно как наверное многих из вас меня заинтересовало сайтостроение и в интернете я стал искать информацию о том, как же создавать сайты.  HTML я более или менее знал, так как в свое время я проходил небольшие курсы по веб дизайну.

Но создавать сайт на html я почему не стал и наткнулся в интернете на бесплатную cms под названием ucoz. И создал в свое время на нем 2 сайта, один сайт был посвящен партнерским программам, который я вскоре забросил, а другой сайт был посвящен услугам связанным с платежной системой paypal и ebay. Который кстати говоря приносил мне некоторую прибыль и просуществовал года полтора.

Далее муж моей сестры открыл ИП и ему потребовался сайт . Он попросил меня сделать его и я согласился. Делать сайт на Ucoz мне уже стало не интересно. Душа требовала знаний, и как раз за то время при обдумывании, на чем же я буду делать сайт, я и набрел на курс

«Joomla — профессиональный сайт за один день»

И был очень поражен по настоящему качественному изложению материалов курсов Евгением.   В итоге благодоря курсу по joomla я сделал мужу сестры сайт, который существует по сей день.

Следующий курс от Евгения, который я стал с большой радостью изучать

 «Изучаем php, mysql, javascript и верстку на примере создания интернет-магазина»

От него я был в еще большем восторге. Мое изучение пхп в свое время началось с какой то книжки, не помню название, помню, что книжка у меня не пошла 🙂

И смотря на этот курс, я осознавал, что он то, что мне нужно.

На форумах есть редкие мнения того, что эти курсы не учат программированию или дизайну профессионально, так и есть, но они дают базу и при помощи этих курсов любой, я уверен что абсолютно любой сможет написать свой сайт со своим собственным дизайном своим собственным кодом.



Можно ли заработать игрой в покер?

Как я и говорил в своем блоге я буду писать не только об IT и моей непосредственной работе связанной с тестированием, но и о моей жизни тоже. Значительную часть в моей жизни занимает покер. Покер, покер, покер, как же я раньше грезил этой игрой. Сколько всего с этой игрой у меня связано. Начнем с того, что приучил меня к этой игре коллега по работе, когда я еще только первый раз устроился на свою первую работу тестировщиком банковского ПО.

Тут уже он мне показал сайт, школу покера, которые дают стартовый капитал в 50 долларов абсолютно бесплатно. Коллега на тот момент играл фикс лимит на одном из самых популярных румов 2-4 доллара полные столы и зарабатывал порядка 1000 долларов в месяц. К слову говоря, это было больше чем наши с ним зп на тот момент, так как зарабатывали мы примерно по 20 000р в месяц.

«Я ни чем не рискую» — подумал я  и зарегистрировался на этом сайте. Сайт этот называется Pokerstrategy —  самая крупная покреная школа в мире.

Для того чтобы тебе дали 50 долларов на pokerstrategy, необходимо было сдать специальную виторингу по выбранному типу виду покера, в который игрок собрался играть. Всего существуют 3 вида разновидностей покера : Это так называемые многостоловые и одностоловые турниры, кеш безлимитный холдем и кеш лимитированный холдем. Так так мой друг играл лимитный холдем и почитав на сайте про эту разновидность, я понял что именно этот вид покера больше всего расчитан на математику и проиграть все, там сложнее 🙂 Вообщем я начал изучать именно этот вид покера. Начались бессонные ночи изучении кучи статей, просмотра видео, оценки рук. Вообщем рассказывать про покер я могу бесконечно, скажу только, что лимитированный покер я бросил проиграв почти полностью стартовый капитал в 50 долларов, потом стал играть другую разновидность покера, одностоловые и много столовые SNG турниры. Снова тоны статей, книжек по покеру, просмотра видео. И вот тут уже меня ждал успех. В итоге через какое то время, так сложилось в моей жизни что я уехал из Москвы в свой родной город и весьма продолжительное время жил только за счет покера, я занял 2 место в турнире от pokerstrategy и выиграл 600 долларов, выигрывал кучу турниров по 300-400 долларов и наконец мой самый крупный выигрыш был, я обыграл 2500 человек в 3 долларовом  ребайнике и за примерно 9 часов игры я занял первое место и выиграл 3700 долларов. В тот момент я себя ощутил просто богом покера. Потом я написал диплом, перебрался в Москву, на покер времени почти не оставалось, я долго пытался совмещать и в конце концов выбрал работу, сейчас я пару раз в месяц могу запустить сыграть какой-нибудь турнирчик ради удовольствия. Хотя меня никогда не отпускает та мысль, что бросив покер может быть я что -то потерял. Да, играть становиться все тяжелее и тяжелее, поле растет очень сильно, но тем не менее несколько моих знакомых на протяжении уже нескольких лет стабильно зарабатывают тысячи долларов в месяц. Знакомый на протяжении уже 3 лет зарабатывает стабильно больше 10к долларов в месяц, но и уделяет игре 12 часов в день.

И я на самом деле очень благодарен своему другу Косте, который подсказал мне такой сайт как pokerstrategy, если вы действительно хотите попробовать, то ничего больше просто не нужно, никаких книг, этот сайт все что вам нужно, регистрируйтесь, задавайте викторину, получайте 50 долларов стартового капитала и пробуйте, возможно у вас получится, но помните что это ни разу не легкие деньги, и придется постоянно учиться, развиваться и стремиться бить поле. Можете писать мне если у вас будут возникать вопросы по прохождению викторины. Так только после прохождения викторины вам дадут стартовые 50 долларов. И вот вам еще один совет. Постарайтесь все таки сдать викторину сами. Викторина очень простая если прочитать все статьи и если не сдадите сами викторину, то почти уверен что вы быстро проиграйте стартовые 50 долларов и так и не будете играть в плюс. Ну, на этом пожалуй с покером хватит. Периодически я все таки буду о нем писать. Удачи.