JavaScript
HTML5 + JavaScript. У автоматизаторов будет больше работы?
Опубликовано dzhariy в 23.01.2012По событиям прошедшего года:
Как создать GUI map для использования в тестах, написанных с помощью web driver и java?
Опубликовано saddy666@gmail.com в 03.12.2011привет
возникли траблы с созданием gui map. в этом http://wiki.openqa.org/display/SEL/GUI_Map туториале нашла описание создания gui map и добавления ее к селелениуму.второй шаг туториала: include created js in the 'TestRunner.html' . Но куда я могу добавить созданную gui map если использую web driver?
Переход с Selenium RC на Selenium WebDriver
Опубликовано polusok в 10.09.2011Как перейти на Selenium WebDriver
Обычным вопросом, в связи с началом использования Selenium 2 является следующий: «Что делать при добавлении новых тестов к уже существующему набору тестов?». Пользователи, которые начали пользоваться этим фреймворком недавно, могут начать использовать новый WebDriver API для написания тестов. Но как быть тем, у которых уже существуют значительные собственные наработки? Это руководство разработано специально для того, чтобы продемонстрировать, как можно переместить ваши тесты на новые API, давая возможность писать все новые тесты, используя новые возможности, предлагаемые WebDriver.
Способ, описанный здесь, предусматривает частичный постепенный переход к WebDriver APIs без необходимости делать один большой рывок и переделывать все сразу. Это означает, что у вас будет много времени на то, чтобы переместить все ваши уже существующие тесты, благодаря чему, вы сможете наиболее эффективно распределить свои усилия.
Это руководство написано при использовании Java потому, что именно так можно наиболее эффективно провести процесс миграции. Так как мы предлагаем инструменты и для других языков, это руководство будет расширено и включит в себя и эти языки.
Зачем переходить к использованию WebDriver
Перенос набора тестов с одного API на другой требует необычайных усилий. Так зачем вам лично и вашей команде рассматривать такие изменения? Далее указаны несколько причин, по которым, вы, возможно захотите совершить такое перемещения тестов Selenium и использование WebDriver.
- Меньший, более компактный API. API у WebDriver более объектно-ориентированный чем у Selenium RC. Благодаря этому с ним намного проще работать.
- Лучшая имитация взаимодействия пользователя с системой. При возможности, WebDriver использует собственные случаи для взаимодействия с веб страницей. Это намного лучше имитирует способ, с помощью которого пользователи работают с ваши сайтом и приложениями. Кроме того, WebDriver предлагает усовершенствованные API взаимодействия, которые позволяют Вам моделировать сложные взаимодействия со своим сайтом.
- Поддержка браузера. Opera, Mozilla и Google активно участвуют в развитии WebDriver, и у каждого из них есть инженеры, работающие над улучшением фреймворка. Часто, это означает, что поддержка WebDriver подразумевается непосредственно в браузере: ваши тесты, работают настолько быстро и стабильно, насколько это возможно.
Перед тем как начать
Чтобы сделать процесс перемещения максимально безболезненным , удостоверьтесь, что все Ваши тесты работают с последней версией Selenium должным образом. Это может казаться очевидным, но лучше еще раз это повторить!
»
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- Читать далее
RoutineBot
Опубликовано d3unka в 31.08.2011
Поставщик:
AKS-Labs
Распространение:
Платный
Цена:
$495 RoutineBot это програмное обеспечение для визуального автоматизированого тестирования, которое дает пользователям возможность создавать и выполнять тесты основаны на графических паттернах.
Ключевые преимущества:
- Позволяет автоматизировать визуальное тестирование двумя методами - разрабатывая скрипты как вручную, так и посредством записи.

- Поддерживает Pascal, JavaScript и Basic языки программирования.
- Может автоматизировать большое количество событий - события мышки(нажатие, передвижение), клавиатуры(ввод текста), делать скриншоты, загружать и сохранять данные, скачивать файлы, работать с приложениями и окнами.
- Поддериживает широкое количество функций для логирования событий(генерация html лога с предоставление скриншотов)
Поддерживаемые технологии:
Windows Forms, Flex, SilverLight, HTML, Ajax, Pascal, JavaScript и Basic
Поддерживаемые ОС:
Windows
Язык тестов:
Pascal
Язык тестов:
JavaScript
Язык тестов:
Basic
Тестируемые приложения:
Windows Forms, Flex, SilverLight, HTML, Ajax
Скачать:
Download
Блоги:
www.testandtry.com »
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- Читать далее
Запуск Selenium тестов с помощью Hudson на Headless Linux Server, Часть 3 -- Настройка Hudson
Опубликовано polusok в 10.06.2011Итак, у вас уже запущен Xvfb, и вы уже протестировали его сделав скриншот или три xclock. Сейчас нужно заставить его работать с тестами Selenium в ваших надстройках Hudson. Самым первым, моя работа была сделана в Selenium RC, в котором нужно запустить отдельный Selenium сервер, который ответственный за запуск браузеров и получающий команды от ваших тестовых скриптов, которые должны быть запущены в браузерах. Я не очень хорошо знаком с другими видами Selenium, поэтому не могу сказать, насколько похожей будет их установка.
Первое, Selenium должен знать какой браузер ему необходимо запустить и/или как его запустить или какой дисплей использовать. Если вы уже пользуетесь Selenium RC, вы знаете, что вам нужно передать название браузера в Selenium, чтобы указать какой браузер использовать. В любом случае, если обычно вы работаете в Windows, а Selenium не может найти Firefox или IE в вашем Linux, вам может понадобиться выполнение некоторых некоторых конфигураций. Обычная команда браузера для запуска Firefox - это "*firefox". У Selenium есть папки по-умолчанию в которых Selenium ищет файл запуска Firefox. Если она не может найти его, можно указать его вручную, например *firefox /usr/bin/firefox-bin. Это говорит Selenium о том, что нужно запустить Firefox и нужно использовать указанный путь. Вы должны указать путь к firefox-bin, а не только к скрипту firefox. Selenium проверить доступность скрипта или исполняемого двоичный код и если что программа сгенерирует исключительный случай. Также существует возможность просто передать путь и аргументы в Selenium, оставляя указатель "*firefox", но как говорится в документах, "Если же вы указываете собственный установленный пользователем браузер, правильность конфигурации будет зависеть только от вас. Как минимум вам нужно будет сконфигурировать ваш браузер для использования сервера Selenium в качестве прокси, и отключить все настройки браузера."
»
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- Читать далее
Запуск Selenium тестов с помощью Hudson на Headless Linux Server, Часть 2 --xwd and xwud
Опубликовано polusok в 10.06.2011В Части 1, я объяснял как запустить Xvfb для того чтобы получить виртуальный дисплей на котором работали бы графические приложения. В этом посте я проверю его работу с помощью запуска xclock и сделав его скриншот. Возможность сделать скриншот виртуального дисплея сама по себе довольно важна. Для того, чтобы сделать и просмотреть скриншот вы используете две разные программы: xwd и xwud. Первая сделает скриншот, а вторая покажет его. Они должны быть установлены на вашем X сервере (я так думаю).
Сначала, запустите xclock на системе, где работает Xvfb с xclock -display :5.0 так, что он будет работать на виртуальном дисплее. Далее, также на системе с Xfvb, сделайте скриншот с
xwd -root -display :5.0 -out xwdout
»
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- Читать далее
Запуск Selenium тестов с помощью Hudson на Headless Linux Server, Часть 1 --Xvfb
Опубликовано polusok в 10.06.2011Я недавно установил Hudson как сервер непрерывной интеграции для моего проекта на работе. Я предпочел установить Hudson а не Cruise Control или Continuum по двум причинам: Hudson очень рекомендовал мне мой бывший сотрудник (спасибо Майк!), и, когда я выбирал между ними, сайт Hudson был значительно понятнее, а его навигация была значительно проще. Я не буду тут писать об установке Hudson, потому, что это очень просто и делается буквально за минуту, а также, в самом интерфейсе есть масса подсказок для установки. В этой серии постов я собираюсь рассказать, как настроить Hudson на проведение тестирования с Selenium на headless Linux server. Также хочу заметить что буду расказывать о Linux только на высоком уровне, так-как, в то время, когда я решился на эту авантюру, знания и опыт с Linux у меня были довольно базовыми, и мне пришлось самому сводить всю информацию, полученную из разных источников. Но, это все же не для полных новичков в Linux. Вам необходимо знать, как минимум, как установить пакеты и навигацию файловой системы с командной строки, перед тем как читать это.
Примечание для непосвященных: Selenium – свободное программное обеспечение для тестирования веб- приложений на уровне UI level. В нем JavaScript используется для взаимодействия с веб-страницами, таким образом, есть возможность прописать серию действий пользователя и гарантировать, что приложение в браузере функционирует так, как это и ожидалось. Но, эта серия постов не расскажет ничего непосредственно об установке Selenium, точно также, как она не рассказывает и об установке Hudson.
Итак, давайте перейдем к Части один. Предположим, что в вашем пакете тестирования уже есть несколько тестов с Selenium и вы хотите, чтобы они работали с надстройки Hudson на вашем headless server. Headless означает, что высока возможность того, что у вас нет работающего X server , а вы не можете использовать Firefox или выбранный вами браузер без X server, проще говоря, это означает, что вы не можете использовать ваше веб-приложение. Как насчет того, чтобы вместо установки полнофункционального X server только для проведения нескольких UI тестов, использовать виртуальный дисплей? С этим вам поможет отличный инструмент, который называется Xvfb. Xvfb запускает базовый виртуальный дисплей в памяти и, таким образом приложения, которым необходимы функциональные возможности графических средств, могут работать на машинах без X server.
»
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- Читать далее
Разработчик автоматических тестов
Опубликовано polusok в 07.12.2010Ищу разработчика автоматических тестов\Test automation Developer:
Основные требования:
- Высшее техническое образование;
- Опыт разработки .NET приложений около двух лет;
- Общий опыт создания автоматических тестов;
- Опыт создания автоматических тестов веб приложений;
- Опыт создания автоматических тестов SOAP веб сервисов;
- Опыт в тестировании производительности и масштабируемости;
- Понимание тестирования (процесса, подходов, методологий, цикла разработки ПО);
- Базовые навыки в HTML, JavaScript;
- Базовые навыки в базах данных, знание основ SQL;
- Опыт работы с инструментами тестирования в Visual Studio 2008, 2010.
Функциональные обязанности:
- Дизайн архитектуры и создание модульного решения автоматического тестирования;
- Разработка и автоматизация функциональных тестов;
- Разработка и автоматизация тестов веб UI;
- Разработка и автоматизация тестов SOAP веб сервисов;
- Разработка тестов производительности и нагрузочных тестов;
- Разработка и документирование методологии автоматизации тестирования;
- Запуск автоматических тестов и создание отчетов по результатам;
- Создание детальных отчетов об ошибках обнаруженных автоматическими тестами.
Компания:
hr-maverick.com
Город:
Киев (Kiev)
Страна:
Украина
Инструменты:
Visual Studio 2008
Ориентировочная зарплата:
от 1,800 USD в месяц
Контакт:
twitter: nikavika, skype:vprydatko, icq:315164564 »
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- Читать далее
Selenium RC (Java): Основные операции в действии. Часть 2
Опубликовано KaNoN в 24.08.2010Работа с полем загрузки файлов
Одним из каверзных стандартных элементов управления на веб-страницах с точки зрения работы Selenium-a является поле загрузки файла. Фактически это текстовое поле и кнопка. В чем сложность? Сложность в том, что нажатие на кнопку Selenium-ом напрямую не делается (да и не нужно, если так посмотреть), а текстовое поле в общем случае доступно только для чтения, так что просто так ввести туда путь к файлу не получится. Это связано с тем, что Selenium-сервер взаимодействует с тестируемым веб-приложением путем посылки JavaScript-команд, а у объектов, соответствующих полям ввода файлов, атрибут value закрыт для записи. Это стандартное ограничение браузеров, блокирующее возможность автоматической загрузки произвольных файлов. Не стоит забывать, что клиентские скрипты несут в себе много чего вредоносного. Отчасти поэтому те же файлы с расширением js многими почтовиками блокируются. Это просто система защиты.
Тем не менее, данные проблемы так или иначе можно обойти. Итак, рассмотрим следующую секцию нашей тестовой страницы:
Реализуем шаг, в котором нам надо ввести некоторый текст в поле ввода файла и проверить, что текст введен корректно. Есть 2 способа ввести текст:
- platform-specific - заключается в использовании сторонних библиотек, которые имитируют ввод с клавиатуры. В частности для Java можно воспользоваться классом java.awt.Robot.
- browser-specific - заключается в том, что для определенных браузеров в определенном режиме поле ввода файлов доступно для записи на программном уровне. В частности, в режиме *chrome Selenium в состоянии ввести текст в поле ввода файла обычным вызовом type.
Из этих 2-х способов предпочтительнее выглядит 2-й по ряду причин. Во-первых, нет привязки к языку программирования, соответственно, данный подход универсален в контексте используемого языка программирования. Во-вторых, зачастую, использование внешних средств, имитирующих пользовательский ввод, привязывает код к конкретной группе операционных систем. И наконец, в-третьих, в большинстве случаев имитация ввода сводится к посылке некоторых сигналов "в эфир". Соответственно, если нужное нам окно не активно, то текст введется неизвестно куда. А ведь одно из удобств Selenium-a заключается в том, что тесты могут выполняться в фоновом режиме, в то время как пользователь может на той же машине заниматься своими делами.
Итак, нам нужно перейти в *chrome-режим, открыть страницу и ввести текст. Как-то так:








