В этом разделе публикуются официальные новости: сообщения о выходе новых релизов Selenium, объявления о конференциях, тренингах и иных мероприятиях, посвящённых Selenium, другие официальные объявления.

Тренер: Баранцев Алексей

За прошедшие несколько лет инструмент автоматизации тестов для веб-приложений Selenium приобрел фантастическую популярность.

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

Если вы собираетесь развиваться в области автоматизации тестирования, вам обязательно нужно освоить Selenium хотя бы на начальном уровне.

Этот курс – самый простой в нашей линейке тренингов, посвященных инструменту Selenium.

От участников не требуется никакой предварительной подготовки в области автоматизации тестирования, не требуется умение программировать, не требуется предварительное знакомство с Selenium или иным инструментом автоматизации. Стартуем с нулевой отметки.

После прохождения тренинга учащийся будет уметь разрабатывать автоматизированные тесты для веб-приложений с использованием инструмента Selenium, в частности:

  • уметь использовать инструментальные средства, помогающие создавать тесты (рекордер, плагины к браузерам),
  • владеть техниками поиска (идентификации) элементов в окне браузера (в том числе уметь создавать несложные XPath и CSS запросы как вручную, так и с использованием специальных инструментов),
  • владеть базовым набором команд Selenium 2.0, эмулирующих действия пользователя (ввод текста, клики мышью),
  • владеть базовым набором команд Selenium 2.0, позволяющих получать данные из браузера (текст, атрибуты элементов),
  • уметь выполнять проверки фактических данных, полученных из браузера, на соответствие ожидаемым значениям.

Предусловия:

  • понимание того, как работает веб-приложение в целом: клиент-серверная архитектура, понимание того, как работает браузер (отрисовка страниц, применение стилей CSS, интерпретация JavaSript-кода),
  • умение читать HTML-код, понимание основных принципов вёрстки HTML-страниц, знание основных тегов (a, div, span, table/tr/td, ul/li),
  • наличие опыта ручного тестирования веб-приложений.

Подробная программа и условия участия

{tortags,128,1}

С момента предыдущего релиза прошло четыре месяца. Обычно новая версия Selenium выпускается вместе с новой версией браузера Firefox. Однако на этот раз были пропущены версии Firefox 34, 35 и обновление Selenium совпало только с выпуском Firefox 36. Ниже краткий рассказ о том, что мы сделали и чего мы не смогли сделать за эти четыре месяца.

Сначала три главных новости, которые только наполовину хорошие.

  1. Реализована поддержка нативных событий для Firefox 34, то есть теперь поддерживаются 34, 33, 31esr и 24esr. Однако тут правильнее было бы написать так: не реализована поддержка нативных событий для браузеров Firefox 35 и 36. Потому что Mozilla "нечаянно" удалила одну очень нужную функцию, без которой мы больше не можем узнавать "нативные идентификаторы" окон браузера. Альтернативного способа получить требуемую информацию пока не придумано. Есть шанс, что реализация нативных событий сломана отныне и навсегда. Привыкайте к синтезированным :)
  2. Устранена критичная проблема совместимости с Firefox 36. Опять таки, Mozilla сделала что-то непонятное внутри браузера, так что старые версии компонента httpd.js (этот компонент тоже делает Mozilla) перестали работать в новой версии браузера. Казалось бы, ничего страшного, достаточно обновить компонент и всё будет хорошо. Именно это мы и сделали. И проблема совместимости исчезла. Но, увы, вместо неё появились проблемы с производительностью при запуске браузера под Linux. Поэтому пока можно признать исправление лишь частичным.
  3. Удалена автоматическая инсталляция драйвера для Safari. Теперь его нужно устанавливать вручную. Увы, стремление компании Apple к повышению уровня защиты создало непреодолимый заслон на пути автоматической установки дополнений к браузеру. Но зато теперь отныне и впредь больше не будет багов в механизме автоинсталляции при выходе новых версий браузера :)

А теперь про остальные наиболее значительные изменения в новой версии:

  • в реализации на Java произведено разделение клиентских jar-файлов на две части: всё, относящееся к Selenium RC вынесено в отдельный jar-файл (это относится и к Maven-артефактам)
  • добавлена прямая поддержка Safari и Internet Explorer в реализацию на JavaScript (то есть для работы с этими браузерами теперь не требуется Selenium Server)
  • появилась поддержка загрузки (upload) файлов в реализации на JavaScript
  • добавлена поддержка новой Opera (работающей на движке Blink) в реализации на Java, .Net, Python и JavaScript, а также в Selenium Server
  • обновлён драйвер для PhantomJS, в дистрибутив включена "неофициальная" версия 1.2.1
  • реализована поддержка пространств имён (namespaces) в XPath-локаторах

Ну и как всегда исправлены разные относительно мелкие ошибки, но это в большей степени интересно авторам баг-репортов, а не широкой публике :)

Мы сделали новую группу в Facebook, посвящённую инструменту Selenium.

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

Кроме того, "чат любителей Selenium" в Skype достиг максимальной допустимой численности участников (поэтому даже не спрашивайте как туда попасть :)), и мы надеемся, что часть обсуждений можно будет перенести в группу на Facebook, которая не имеет таких жёстких ограничений.

В общем, присоединяйтесь!

Второй запуск тренинга.

Авторы и ведущие тренинга: Алексей Баранцев и Наталья Руколь

У многих тестировщиков, а также и у многих менеджеров, при звуке слов "автоматизация тестирования" в мозгу возникает идиллическая картинка в стиле научно-фантастических романов: роботы выполняют рутинную и тяжёлую работу, а человек занимается интеллектуальным или творческим трудом.

Но это никакая не фантастика, это вполне реально и достижимо!

Да, можно освободить тестировщиков от выполнения некоторых типовых задач, переложив эту работу на плечи роботов. Таких рутинных действий тестировщик совершает больше, чем кажется на первый взгляд. Автоматизировать можно не только собственно выполнение тестов, но и подготовку тестового стенда, генерацию тестовых данных большого объёма или высокой сложности, помощь в проверке результатов, полученных при ручном тестировании (сравнение текстов, картинок), создание отчётов или иных документов.

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

Процесс внедрения автоматизации – это как раз и есть процесс создания или обучения роботов.

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

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

Ну и конечно без инженеров в этом деле не обойтись. Правильно выбрать средства автоматизации, интегрировать с инструментами групповой работы (баг-трекер, сервер непрерывной интеграции, системы отчётности) – при решении этих технических задач талант инженера-автоматизатора может раскрыться в полной мере.

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

Чтобы научить вас правильно планировать процесс внедрения автоматизации, успешно решать технические задачи и адекватно оценивать текущее состояние процесса

мы разработали новый тренинг, особенность которого заключается в том, что его ведут два тренера – "менеджер" и "инженер".

Это позволит вам увидеть проблемы, которые возникают при внедрении автоматизации тестирования, с двух разных (можно даже сказать противоположных) точек зрения.

Тренинг будет полезен всем, кто внедряет с нуля или улучшает текущие подходы к организации автоматизированного тестирования: тест-менеджерам, специалистам по автоматизации и тест-дизайнерам, взаимодействующим с группой автоматизации.

Программа тренинга и условия участия

Больше 4-х лет назад мы впервые запустили курс Программирование на Java для тестировщиков. Курс сразу стал популярным и количество желающих его пройти не уменьшается до сих пор, тема очень актуальная, знания и навыки, полученные на курсе открывают для тестировщиков новые горизонты и дают возможность роста.

Летом прошлого года мы запустили курс Программирование на С# для тестировщиков. Мы ожидали, что курс будет востребован, но количество желающих посетить этот курс превзошло наши ожидания.

Поэтому мы решили сделать следующий шаг -- мы запускаем новый курс Программирование на Python для тестировщиков. Курс начнется 27 февраля. Для тех, кто запишется и оплатит курс до 25 января действует 10% скидка.

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

Познакомиться с подробной программой и условиями участия можно по ссылке: http://software-testing.ru/trainings/schedule?task=3&cid=233

{tortags,124,1}

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

Итак, ниже список наиболее существенных изменений.

  • реализована поддержка нативных событий для Firefox 33 (теперь поддерживаются 33, 32, 31esr, 24esr)
  • обновлён модуль поддержки Marionette, согласован с текущим состоянием реализации Marionette в Firefox 33
  • заменена библиотека для работы с JSON, вместо org.json теперь используется gson (причина -- "неправильная" лицензия пакета org.json), вследствие этого возможны проблемы с загрузкой конфигурационных файлов нодов, так как gson более требователен к синтаксической правильности json-файлов
  • удалены некоторые deprecated-классы, из-за этого в частности с версией 2.44 не работает PhantomJsDriver, потому что он использует удалённый класс
  • ускорен поиск элементов по id при вызове findElements (хотя вообще-то редко кто так делает, но всё же)
  • реализована проверка "допустимости" значения при вызове capabilities.setPlatform, это может вызвать проблемы при использовании "нестандартных" реализаций grid, которые используют "нестандарные" значения для платформы (в частности SauceLabs), поэтому в следующей версии эта проверка будет частично ослаблена
  • добавлены условия ожидания (expected conditions) в реализацию на JavaScript

Go to top