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

19 февраля мы запускаем новую версию тренинга “Программирование на Java для тестировщиков”.

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

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

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

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

Что мы решили убрать из курса:

  • тестирование Windows-приложений через пользовательский интерфейс -- всё таки Java совсем не приспособлена для этого, если перед вами стоит такая задача -- тогда лучше выбрать другой язык для написания тестов, например, C# или Python;

  • тестирование Java приложений через пользовательский интерфейс -- просто потому, что таких приложений слишком мало, и эта тема оказалась невостребованной.

А теперь гораздо более длинный список того, что добавлено:

  • большой блок, посвящённый самым основам языка Java и программирования вообще, теперь тренинг подходит даже для тех, кто совсем-совсем не умеет программировать, обучение начинается с нулевого уровня подготовки;

  • использование сборщика Gradle;

  • дополнительные приёмы повышения надёжности тестов за счёт проверки и обеспечения выполнения предусловий;

  • работа с файлами в формате JSON;

  • более глубокое рассмотрение возможностей тестового фреймворка TestNG;

  • работа с удалёнными программными интерфейсами SOAP и REST;

  • настройка и использование сервера непрерывной интеграции Jenkins и генерация красивых отчётов при помощи инструмента Allure;

  • написание тестов в разных стилях: на псевдоестественном языке Gherkin (этот подход называется Behavior Driven Development) и в виде табличек с использованием инструмента Robot Framework (этот подход называется Keyword Driven Testing).

Все “старые” темы тоже полностью переписаны, материал лекций уплотнён, и для удобства просмотра разбит на небольшие фрагменты продолжительностью не более 20 минут.

А ещё по многочисленным просьбам в лекциях теперь используется IntelliJ IDEA вместо Eclipse ;)

Познакомиться с программой и условиями участия

 

Выход новой версии браузера Firefox 43 принёс неприятный сюрприз пользователям Selenium IDE: дополнение отключилось и не хочет активироваться. Причина в том, что начиная с этой версии в браузере действует новая политика безопасности по отношению к дополнениям -- они все должны пройти аудит и получить "свидетельство безопасности" в виде электронной подписи. Неподписанные дополнения больше использовать не разрешается.

К счастью, Selenium IDE уже прошёл через эту процедуру, и поэтому нужно просто обновить его до версии 2.9.1.

Увы, гораздо хуже обстоят дела с запуском из консоли тестов, сохранённых из Selenium IDE в виде HTML-файлов. Они не запускаются. Потому что там пока "свидетельства безопасности" нет.

Что же делать?

Либо запускать в других браузерах, либо откатить Firefox до более ранней версии, лучше всего до предыдущей ESR версии (в настоящий момент это версия 38)

Вчера вышел очередной релиз Selenium 2.48.

Самая главная новинка этой версии -- поддержка Marionette, на этот раз вполне официальная, и не только на Java, но также на Python, Ruby, .Net. Подробнее про то, как использовать MarionetteDriver, что в нём уже реализовано, а что пока не работает -- в следующей заметке.

Другие немаловажные изменения в новом релизе:

  • изменена семантика операции getCurrentUrl (подробнее об этом здесь)
  • синтезированные события в FirefoxDriver стали более точно эмулировать поведение пользователя (подробнее об этом здесь)
  • HtmlUnit обновлён до версии 2.18
  • движок для сервера обновлён с jetty v.7 до jetty v.9 (надеемся, что это не вызовет никаких проблем в работе сервера...)
  • в реализации на .Net изменена процедура десериализации ответов от сервера (дня не прошло, а уже есть жалобы на новый механизм, если заметите ещё что-нибудь подозрительное -- пишите баг-репорты)

Наличие автоматизации это не переключатель с двумя положениями. Вот вчера ещё у вас ещё не было автоматизации. А сегодня -- чик! -- и она есть. Всё совсем не так.

Автоматизация -- это делегирование некоторых задач от человека машине.

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

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

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

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

Есть мнение, что "хорошие" автотесты могут быть написаны только на "настоящем" языке программирования.

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

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

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

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

Для быстрого освоения Selenium IDE мы сделали новую версию тренинга "Selenium: стартовый уровень".

{tortags,152,1}

Пока я был в отпуске, неожиданно случился релиз Selenium 2.47.

Главным поводом послужило добавление официального драйвера для браузера Microsoft Edge. Этот браузер входит в состав Windows 10, поставки которой начались 29 июля.

Но это не единственное крупное изменение, есть и другие:

  • прекращена поддержка Java 6, теперь минимальным требованием для работы Selenium Server и клиенткой Java-библиотеки является Java 7 (которая, кстати, тоже уже не поддерживается производителем, так что вообще говоря правильно использовать Java 8)
  • класс WebElement теперь реализует интерфейс TakesScreenshot, потому что согласно стандарту W3C WebDriver должна быть возможность снять скриншот отдельного элемента, но не стоит обольщаться -- реализации пока нет, только интерфейс :)
  • клиенская C#-библиотека теперь использует пакет ZipStorer вместо DotNetZip, это позволило обеспечить совместимость с платформой Mono
  • в Selenium Grid решена проблема запуска "совсем другого браузера" -- например, пользователь запрашивает Opera, а вместо этого запускается Internet Explorer или Safari, теперь выбрасывается исключение, если не удаётся запустить браузер нужного типа
  • реализована сортировка узлов Selenium Grid в соответствии с загруженностью, сессии теперь распределяются по узлам более равномерно
  • добавлена поддержка диалоговых окон (alerts) в HtmlUnitDriver
  • добавлена поддержка SVG в HtmlUnitDriver
  • добавлена экспериментальная поддержка диалога авторизации в InternetExplorerDriver

Ну и как всегда исправлено некоторое количество багов.

Облачный провайдер браузеров BrowserStack оказался быстрее конкурентов и первым предоставил возможность запуска браузера Edge на платформе Windows 10.

Go to top