В этой заметке я расскажу, как создать связку Selenium RC + JUnit (фреймворк для тестирования) + Maven (сборщик проектов) на примере NetBeans IDE.
- В NetBeans из списка доступных подключаемых модулей («Сервис» -> «Подключаемые модули») необходимо выбрать и установить «Selenium Module for Maven».
- Создать новый проект «Maven» -> «Приложение Java». Дождаться загрузки всех файлов для работы с Maven. Когда проект будет построен, в папке тестовых зависимостей появится JUnit.
- Добавить в проект «Selenium Test Case for Maven project» («Создать» -> «Другое», в категории выбрать «Selenium»). В папке тестовых зависимостей появится Selenium.
- Выделить папку «Тестовые зависимости», вызвать контекстно меню и выбрать «Загрузить объявленные зависимости».
- Попытаться построить проект с зависимостями (выделить проект, вызвать контекстно меню и выбрать «Построить с зависимостями»). Если появится сообщение ошибке «error: package org.junit does not exist», то переходим к шагу 6, иначе к шагу 7.
- Загрузить последнюю версию JUnit с официальной страницы проекта. На текущий момент актуальной версией является 4.10. В папке тестовых зависимостей выделить JUnit, вызвать контекстно меню и выбрать «Установить артефакт вручную». Выбрать загруженные JUnit и нажать на кнопку «Локальная установка». После этого ошибка «error: package org.junit does not exist» должна пропасть.
- Чтобы проводить тесты, необходимо загрузить загрузить последний Selenium RC с официальной страницы проекта. На текущий момент актуальной версией является 2.19.0. После чего нужно запустить загруженный файл:
java -jar selenium-server-standalone-2.19.0.jar
- Убедиться, что все работает — выделить созданный класс в пункте 3, вызвать контекстно меню и выбрать «Тестировать файл». После чего должен запуститься указанный в конструкторе браузер.
Дальше уже все по своему усмотрению. К примеру, тесты, написанные в Selenium IDE можно перенести на Selenium RC / WebDriver. Для этого в Selenium IDE есть функция «Формат», которая позволяет автоматически конвертировать текущий формат представления теста в выбранный.