Jenkins で簡単な Selenium テストをセットアップしようとしています。私の OS は Debian GNU/Linux 6.0.7 (squeeze)、デスクトップ バージョン (64 ビット) です。付属のブラウザ iceweasel をアンインストールし、Firefox を aptitude でインストールしました。firefoxのバージョンは「20.0」です。Google Chrome もインストールしています。ターミナル ウィンドウで「firefox」と入力すると、Firefox を実行できます。Jenkins は aptitude とともにインストールされます。
そこで、Seleniumhq というプラグインを Jenkins にインストールしました。これらは私の設定です:
ビルドしようとすると、Jenkins コンソールにエラーが表示されます。
Started by user anonymous
Building in workspace /var/lib/jenkins/workspace/selenium2
java -jar /var/lib/jenkins/selenium-server-standalone-2.0b2.jar -trustAllSSLCertificates -htmlSuite *firefox http://site.com /var/lib/jenkins/jobs/Selenium1/suites/suite1.html /var/lib/jenkins/jobs/Selenium1/logs/selenium.html
[selenium2] $ java -jar /var/lib/jenkins/selenium-server-standalone-2.0b2.jar - trustAllSSLCertificates -htmlSuite *firefox http://site.com /var/lib/jenkins/jobs/Selenium1/suites/suite1.html /var/lib/jenkins/jobs/Selenium1/logs/selenium.html
13:32:18.507 INFO - Java: Sun Microsystems Inc. 14.0-b16
13:32:18.508 INFO - OS: Linux 2.6.32-5-amd64 amd64
13:32:18.512 INFO - v2.0 [b2], with Core v2.0 [b2]
13:32:18.604 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
13:32:18.605 INFO - Version Jetty/5.1.x
13:32:18.606 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
13:32:18.606 INFO - Started HttpContext[/selenium-server,/selenium-server]
13:32:18.607 INFO - Started HttpContext[/,/]
13:32:18.616 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@488e32e7
13:32:18.616 INFO - Started HttpContext[/wd,/wd]
13:32:18.621 INFO - Started SocketListener on 0.0.0.0:4444
13:32:18.621 INFO - Started org.openqa.jetty.jetty.Server@5a5e5a50
HTML suite exception seen:
java.lang.RuntimeException: java.lang.RuntimeException: Firefox 3 could not be found in the path!
Please add the directory containing ''firefox-bin' or 'firefox'' to your PATH environment
variable, or explicitly specify a path to Firefox 3 like this:
*firefox3/blah/blah/firefox-bin
at org.openqa.selenium.server.browserlaunchers.BrowserLauncherFactory.createBrowserLauncher(Bro wserLauncherFactory.java:160)
at org.openqa.selenium.server.browserlaunchers.BrowserLauncherFactory.getBrowserLauncher(Browse rLauncherFactory.java:99)
at org.openqa.selenium.server.htmlrunner.HTMLLauncher.getBrowserLauncher(HTMLLauncher.java:58)
at org.openqa.selenium.server.htmlrunner.HTMLLauncher.runHTMLSuite(HTMLLauncher.java:114)
at org.openqa.selenium.server.htmlrunner.HTMLLauncher.runHTMLSuite(HTMLLauncher.java:166)
at org.openqa.selenium.server.SeleniumServer.runHtmlSuite(SeleniumServer.java:557)
at org.openqa.selenium.server.SeleniumServer.boot(SeleniumServer.java:250)
at org.openqa.selenium.server.SeleniumServer.main(SeleniumServer.java:210)
Caused by: java.lang.RuntimeException: Firefox 3 could not be found in the path!
Please add the directory containing ''firefox-bin' or 'firefox'' to your PATH environment
variable, or explicitly specify a path to Firefox 3 like this:
*firefox3/blah/blah/firefox-bin
at org.openqa.selenium.browserlaunchers.locators.Firefox2or3Locator.findBrowserLocationOrFail(Firefox2or3Locator.java:26)
at org.openqa.selenium.server.browserlaunchers.BrowserInstallationCache.locateBrowserInstallation(BrowserInstallationCache.java:27)
at org.openqa.selenium.server.browserlaunchers.FirefoxLauncher.<init>(FirefoxLauncher.java:52)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
at org.openqa.selenium.server.browserlaunchers.BrowserLauncherFactory.createBrowserLauncher(BrowserLauncherFactory.java:153)
... 7 more
Finished: SUCCESS
また、これをブラウザ フィールドに入力しようとしました: *firefox/usr/bin/firefox そこに firefox がインストールされていると思います (「locate firefox」を実行しました)。その構成は、別のエラー メッセージをレンダリングします。
...
HTML suite exception seen:
java.lang.RuntimeException: Browser not supported: *firefox/usr/bin/firefox
Supported browsers include:
*firefox
*mock
*firefoxproxy
*pifirefox
*chrome
*iexploreproxy
*iexplore
*firefox3
*safariproxy
*googlechrome
*konqueror
*firefox2
*safari
*piiexplore
*firefoxchrome
*opera
*iehta
*custom
....
これを修正する方法について誰かアイデアがありますか? ありがとう!
編集
ブラウザの設定を次のように変更しました: *firefox /opt/firefox/firefox (間にスペースを入れてください) FIrefox が見つかるようですが、別のエラーが表示されます:
Started by user anonymous
Building in workspace /var/lib/jenkins/workspace/selenium2
java -jar /var/lib/jenkins/selenium-server-standalone-2.0b2.jar -trustAllSSLCertificates -htmlSuite *firefox /opt/firefox/firefox http://site.com /var/lib/jenkins/jobs/selenium2/suites/suite1.html /var/lib/jenkins/jobs/selenium2/logs/selenium.html
[selenium2] $ java -jar /var/lib/jenkins/selenium-server-standalone-2.0b2.jar - trustAllSSLCertificates -htmlSuite "*firefox /opt/firefox/firefox" http://site.com /var/lib/jenkins/jobs/selenium2/suites/suite1.html /var/lib/jenkins/jobs/selenium2/logs/selenium.html
10:51:15.567 INFO - Java: Sun Microsystems Inc. 14.0-b16
10:51:15.569 INFO - OS: Linux 2.6.32-5-amd64 amd64
10:51:15.572 INFO - v2.0 [b2], with Core v2.0 [b2]
10:51:15.668 INFO - RemoteWebDriver instances should connect to: http: //127.0.0.1:4444/wd/hub
10:51:15.669 INFO - Version Jetty/5.1.x
10:51:15.669 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
10:51:15.670 INFO - Started HttpContext[/selenium-server,/selenium-server]
10:51:15.670 INFO - Started HttpContext[/,/]
10:51:15.680 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@3da99561
10:51:15.680 INFO - Started HttpContext[/wd,/wd]
10:51:15.685 INFO - Started SocketListener on 0.0.0.0:4444
10:51:15.685 INFO - Started org.openqa.jetty.jetty.Server@182d9c06
10:51:15.743 INFO - Preparing Firefox profile...
HTML suite exception seen:
java.lang.NullPointerException
at org.openqa.selenium.os.CommandLine.destroy(CommandLine.java:259)
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.populateCustomProfileDirec tory(FirefoxChromeLauncher.java:117)
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.launch(FirefoxChromeLauncher.java:84)
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.launchHTMLSuite(FirefoxChromeLauncher.java:406)
at org.openqa.selenium.server.browserlaunchers.FirefoxLauncher.launchHTMLSuite(FirefoxLauncher.java:106)
at org.openqa.selenium.server.htmlrunner.HTMLLauncher.runHTMLSuite(HTMLLauncher.java:121)
at org.openqa.selenium.server.htmlrunner.HTMLLauncher.runHTMLSuite(HTMLLauncher.java:166)
at org.openqa.selenium.server.SeleniumServer.runHtmlSuite(SeleniumServer.java:557)
at org.openqa.selenium.server.SeleniumServer.boot(SeleniumServer.java:250)
at org.openqa.selenium.server.SeleniumServer.main(SeleniumServer.java:210)
10:51:35.789 INFO - Shutting down...
Finished: SUCCESS