Ошибка при запуске селениум сервера
#1
Отправлено 06 мая 2009 - 10:28
фейлд?
11:31:01.796 INFO - Java: Sun Microsystems Inc. 11.3-b02
11:31:01.796 INFO - OS: Windows XP 5.1 x86
11:31:01.796 INFO - v0.9.2 [2006], with Core v0.8.3 [1879]
11:31:01.875 INFO - Version Jetty/5.1.x
11:31:01.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server
/driver]
11:31:01.875 INFO - Started HttpContext[/selenium-server,/selenium-server]
11:31:01.875 INFO - Started HttpContext[/,/]
11:31:01.890 WARN - Failed to start: SocketListener0@0.0.0.0:4444
Exception in thread "main" org.mortbay.util.MultiException[java.net.BindExceptio
n: Address already in use: JVM_Bind]
at org.mortbay.http.HttpServer.doStart(HttpServer.java:686)
at org.mortbay.util.Container.start(Container.java:72)
at org.openqa.selenium.server.SeleniumServer.start(SeleniumServer.java:8
39)
at org.openqa.selenium.server.SeleniumServer.main(SeleniumServer.java:36
4)
java.net.BindException: Address already in use: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(Unknown Source)
at java.net.ServerSocket.bind(Unknown Source)
at java.net.ServerSocket.<init>(Unknown Source)
at org.mortbay.util.ThreadedServer.newServerSocket(ThreadedServer.java:3
91)
at org.mortbay.util.ThreadedServer.open(ThreadedServer.java:477)
at org.mortbay.util.ThreadedServer.start(ThreadedServer.java:503)
at org.mortbay.http.SocketListener.start(SocketListener.java:203)
at org.mortbay.http.HttpServer.doStart(HttpServer.java:716)
at org.mortbay.util.Container.start(Container.java:72)
at org.openqa.selenium.server.SeleniumServer.start(SeleniumServer.java:8
39)
at org.openqa.selenium.server.SeleniumServer.main(SeleniumServer.java:36
4)
#2
Отправлено 06 мая 2009 - 10:57
Собственно он сам всё написал - порт 4444 уже занят, надо либо освободить, либо использовать другой свободный порт.java.net.BindException: Address already in use: JVM_Bind
#3
Отправлено 06 мая 2009 - 10:59
#4
Отправлено 06 мая 2009 - 11:31
Под виндой что-то типа "netstat", а под линухом "lsof | grep 4444", смотрим кто держит порт и прибиваем его, либо указываем RC'шке вешаться на другой порт, насколько помню, параметр -portесли можно подробнее как всё это делается (освобождается либо используется другой свободный)
#5
Отправлено 06 мая 2009 - 11:38
#6
Отправлено 06 мая 2009 - 13:35
На сколько я понимаю последовательность действий (используется PHPUnit + Selenium RC) в консоле запускается селениум сервер (java -jar selenium-server.jar -interactive) далее выполняется запуск тестсьюита (-htmlSuite *firefox http://test.com D:\work\login.php D:\work\res\result.php)
Но после такого мне пишет ERROR - Invalid command: -htmlSuite
Что я делаю не так?
#7
Отправлено 06 мая 2009 - 13:59
а htmlSuite - это тест на языке Selenese.
#8
Отправлено 06 мая 2009 - 14:05
то есть запуск моего скрипта должен идти непосредственно при запуске сервера? то есть сразу java -jar selenium-server.jar -htmlSuite *firefox http://test.com D:\work\login.php D:\work\res\result.php-interactive означает, что все команды будут вводиться руками, а у тебя PHP-скрипт, надо запустить сам скрипт.
а htmlSuite - это тест на языке Selenese.
#9
Отправлено 06 мая 2009 - 14:07
1. Запуск сервера RC.
2. Забываем про параметр -htmlSuite напрочь.
3. Запускаем PHP-скрипт интерпретатором PHP.
#10
Отправлено 06 мая 2009 - 15:31
ну запускаю я свой скрипт через php.exe D:\work\>php -f log.phpНет, вот так:
1. Запуск сервера RC.
2. Забываем про параметр -htmlSuite напрочь.
3. Запускаем PHP-скрипт интерпретатором PHP.
а как отследить как отработал скрипт и т д, как увидеть всё в браузере?
и раз забыть про -htmlSuite что же можно использовать?
#11
Отправлено 06 мая 2009 - 15:45
Увидеть всё - это что? :) Как бегает браузер, тестируя странички? Если всё верно в PHP-тесте, то RC откроет новое окно браузера и в нём всё будет.ну запускаю я свой скрипт через php.exe D:\work\>php -f log.php
а как отследить как отработал скрипт и т д, как увидеть всё в браузере?
и раз забыть про -htmlSuite что же можно использовать?
Вместо -htmlSuite ничего не надо использовать, PHP-тест сам должен инициализировать сессию и с ней работать, а -htmlSuite нужен только для тестов, написанных в Selenium IDE.
#12
Отправлено 06 мая 2009 - 15:48
И ещё вопросик, как я буду получать результат? прошла какая команда, какая не прошла и т д
#13
Отправлено 06 мая 2009 - 16:07
RC должен быть запущен в обычном режиме, конкретной команды для этого нет, просто не указывать -interactive и всё. Ещё я бы рекомендовал всегда использовать режим -multiWindow, так проблем меньше.а в каком режиме при это должен быть запущен селениум сервер если не -interactive ?
И ещё вопросик, как я буду получать результат? прошла какая команда, какая не прошла и т д
Результат возвращает драйвер Selenium'а, а то как его проверять зависит от фреймворка, например в JUnit что-то типа такого:
assertTrue("Text 'some text' is not present!", selenium.isTextPresent("some text"));
#14
Отправлено 07 мая 2009 - 07:37
ЗЫ получается вызов браузера должен осуществляться в самом пхп скрипте?
#15
Отправлено 07 мая 2009 - 08:43
Почти. PHP-скрипт должен создать и инициализировать сессию к SeleniumRC (сказать ей selenium.start()), а уже SeleniumRC в зависимости от параметров запустит браузер.Спасибо vitorg!!!
ЗЫ получается вызов браузера должен осуществляться в самом пхп скрипте?
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных