Запуск Selenium Webdreiver теста из .bat файла
#1
Отправлено 15 мая 2012 - 14:01
Я использую Selenium Webdriver + Eclipse + java + TestNg. Написал весь тест, подключил логеры, но стала задача, сделать так, чтобы тест можно было запустить одним нажатием, а не из эклипса. То есть нужно, собрать .bat файл, при запуске которого, запуститься тест и будет выполнять, то что нужно.
Вопрос, не подскажите ли, как это сделать?
Я сделал xml файл, вида: тут имя проекта, и имя класса, в котором находятся методы с тестами. Правда я не уверен в правильности этой строки: <class name="TestReport.TestMethods"/> TestReport - это имя пэкэджа, TestMethods - это имя класса с методами-тестами.
<!DOCTYPE suite SYSTEM "http://testng.org/te...estng-1.0.dtd">
<suite name="Webdriver_Project">
<test verbose="2" name="Group Tests" annotations="JDK" preserve-order="true">
<classes>
<class name="TestReport.TestMethods"/>
</classes>
</test>
</suite>
Так же я сделал .bat файл, вида:
set SELENIUM_HOME=
set TESTNG_HOME=C:/eclipse/plugins/org.junit_4.8.2.v4_8_2_v20110321-1705
set JUNIT_HOME=C:/eclipse/plugins/org.junit4_4.8.1.v20100525
java -Dbrowser=*firefox -cp bin;%SELENIUM_HOME%/selenium-java-client-driver.jar;%TESTNG_HOME%/lib/testng.jar;%JUNIT_HOME%/junit.jar org.testng.TestNG %*
Но тут не знаю, что писать в set SELENIUM_HOME=
и не уверен, что остальнео парвильно опсиано.
Может быть кто-то подскажет мне, как решить проблему, или посоветует более удобный способ реализации запуска теста, без имcпользования eclipse?
СПАСИБО!
#2
Отправлено 15 мая 2012 - 14:19
set javaTestProjectPath=%~dp0
set TESTNGFILE=Tests.xml
Переходим в папку проекта
cd /d %javaTestProjectPath%
Указываем путь где у нас установлена джава
set path=C:\Program Files\Java\jre6\bin
Указываем пути к сторонним библиотекам и нашим бинарникам
set classpath=%javaTestProjectPath%\bin;%javaTestProjectPath%\Lib\selenium-java-2.20.0.jar; и т.д
Запускаем из cmd при помощи TestNg
java org.testng.TestNG "%javaTestProjectPath%\%TESTNGFILE%" -d "%javaTestProjectPath%\test-output"
Вот Вам и батник.
#3
Отправлено 16 мая 2012 - 07:09
cd /d %javaTestProjectPath% - вот это где вообще надо писать?
я просто этого не делал никогда и по этому очень сложно понять, что вы имеете в виду. Не могли бы вы более подброно описать этот процесс?
Создаем переменные 1. Путь где у нас лежит тест-проект 2. Имя xml которую будем запускать
set javaTestProjectPath=%~dp0
set TESTNGFILE=Tests.xml
Переходим в папку проекта
cd /d %javaTestProjectPath%
Указываем путь где у нас установлена джава
set path=C:\Program Files\Java\jre6\bin
Указываем пути к сторонним библиотекам и нашим бинарникам
set classpath=%javaTestProjectPath%\bin;%javaTestProjectPath%\Lib\selenium-java-2.20.0.jar; и т.д
Запускаем из cmd при помощи TestNg
java org.testng.TestNG "%javaTestProjectPath%\%TESTNGFILE%" -d "%javaTestProjectPath%\test-output"
Вот Вам и батник.
#4
Отправлено 16 мая 2012 - 09:20
но вот проблема дальше, почему все 8 тестов , которые у меня в классе есть не прошли, то есть консоль напротив каждого метода-теста, написала:
FAILED: RegistraionForm - (один из методов)
java.lang.NoClassDefFoundError:com/google/common/base/Function
Впорос , почему? судя по ошибе система не видит нужных библиотек, но я вроде бы всё подключил ?
Вот мой .bat файл:
set javaTestProjectPath=%~dp0
set TESTNGFILE=group-tests.xml
set path=C:/Program Files (x86)/Java/jre6/bin
set SELENIUM_HOME=D:/work/Silenium/selenium-2.20.0/libs
set TESTNG_HOME=c:/eclipse/plugins/org.testng.eclipse_6.4.0.20120308_1617/
set JUNIT_HOME=C:/eclipse/plugins/org.junit_4.8.2.v4_8_2_v20110321-1705
java -Dbrowser=*firefox -cp bin;%SELENIUM_HOME%/selenium-java-2.20.0.jar;%TESTNG_HOME%/lib/testng.jar;%JUNIT_HOME%/junit.jar org.testng.TestNG %* group-tests.xml
Вот мой group-tests.xml
<!DOCTYPE suite SYSTEM "http://testng.org/te...estng-1.0.dtd">
<suite name="Webdriver_Project">
<test verbose="2" name="Group Tests" annotations="JDK" preserve-order="true">
<classes>
<class name="TestReport.TestMethods"/>
</classes>
</test>
</suite>
Где, TestReport - это имя пэкэджа, TestMethods - это имя класса с методами-тестами.
#5
Отправлено 28 июня 2012 - 05:35
#6
Отправлено 28 июня 2012 - 05:37
#7
Отправлено 28 июня 2012 - 07:49
#8
Отправлено 03 июля 2012 - 05:53
Да и ant'а скрипты тоже. Суть не в этом. Суть в том, что "сборщики" куда более приспособлены, нежели бат-файлы. Да и батник больше 5 строк это изврат.Также можно использовать Maven. Скрипты maven легко интегрируются в Continuous Integration процесс.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных