在没有GUI的linux机器上通过jenkins执行Selenium测试(仅限CLI)-无头模式
这是关于Selenium自动化测试的。我有一些测试执行的Jenkins作业设置。Jenkins是在没有GUI(仅CLI)的Ubuntu机器上设置的。 因此,当我运行脚本时,它似乎显然找不到web浏览器 此作业在windows中运行良好。在Windows中,我得到这样的结果 窗口成功结果在没有GUI的linux机器上通过jenkins执行Selenium测试(仅限CLI)-无头模式,linux,selenium,jenkins,selenium-webdriver,headless,Linux,Selenium,Jenkins,Selenium Webdriver,Headless,这是关于Selenium自动化测试的。我有一些测试执行的Jenkins作业设置。Jenkins是在没有GUI(仅CLI)的Ubuntu机器上设置的。 因此,当我运行脚本时,它似乎显然找不到web浏览器 此作业在windows中运行良好。在Windows中,我得到这样的结果 窗口成功结果 ------------------------------------------------------- T E S T S ---------------------------------------
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running TestSuite
06/08/2015 00:04:47,996 INFO [main] (BasicTestObject.java:251) - ======BEGIN Test workflow============
06/08/2015 00:04:48,002 INFO [main] (BasicTestObject.java:252) - BEGIN Test: MlpBvt
06/08/2015 00:04:48,002 INFO [main] (BasicTestObject.java:253) - ======BEGIN Test workflow============
06/08/2015 00:04:58,862 DEBUG [main] (DefaultUIDriver.java:300) - Opened url: http://mlpdemo.qaprod.ecollege.com/
06/08/2015 00:04:58,912 INFO [main] (BasicTestObject.java:296) - -------------BEGIN Test Method-------------------
06/08/2015 00:04:58,913 INFO [main] (BasicTestObject.java:297) - BEGIN Test Method: verifyAdminLogin
06/08/2015 00:04:58,913 INFO [main] (BasicTestObject.java:298) - -------------BEGIN Test Method-------------------
06/08/2015 00:04:58,969 DEBUG [main] (DefaultUIElement.java:980) - Waiting 60000ms for element to be displayed [Locator = {By.xpath: //input[@id='clientname']}]
06/08/2015 00:04:59,058 DEBUG [main] (DefaultUIElement.java:538) - Element is displayed [Locator = {By.xpath: //input[@id='clientname']}]
06/08/2015 00:04:59,059 DEBUG [main] (DefaultUIElement.java:992) - After 89ms, element is displayed [Locator = {By.xpath: //input[@id='clientname']}]
在Linux上,我会这样
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running TestSuite
06/08/2015 00:18:46,834 INFO [main] (BasicTestObject.java:251) - ======BEGIN Test workflow============
06/08/2015 00:18:46,839 INFO [main] (BasicTestObject.java:252) - BEGIN Test: MlpBvt
06/08/2015 00:18:46,839 INFO [main] (BasicTestObject.java:253) - ======BEGIN Test workflow============
06/08/2015 00:18:46,998 DEBUG [main] (CapturePageOnFailureListener.java:186) - CapturePageOnFailure found 2 parameters
06/08/2015 00:18:47,002 WARN [main] (DebugUIDriver.java:311) - Called quit() on debugDriver containing null uiDriver
06/08/2015 00:18:47,025 INFO [main] (BasicTestObject.java:304) - -------------END Test Method-------------------
06/08/2015 00:18:47,026 INFO [main] (BasicTestObject.java:305) - END Test Method: verifyAdminLogin
06/08/2015 00:18:47,026 INFO [main] (BasicTestObject.java:306) - -------------END Test Method-------------------
06/08/2015 00:18:47,031 INFO [main] (BasicTestObject.java:304) - -------------END Test Method-------------------
06/08/2015 00:18:47,032 INFO [main] (BasicTestObject.java:305) - END Test Method: VerifyProfessorLogin
06/08/2015 00:18:47,032 INFO [main] (BasicTestObject.java:306) - -------------END Test Method-------------------
06/08/2015 00:18:47,036 INFO [main] (BasicTestObject.java:304) - -------------END Test Method-------------------
06/08/2015 00:18:47,036 INFO [main] (BasicTestObject.java:305) - END Test Method: VerifyStudentLogin
06/08/2015 00:18:47,037 INFO [main] (BasicTestObject.java:306) - -------------END Test Method-------------------
06/08/2015 00:18:47,038 INFO [main] (BasicTestObject.java:283) - ======END Test workflow============
06/08/2015 00:18:47,038 INFO [main] (BasicTestObject.java:284) - END Test: MlpBvt
06/08/2015 00:18:47,040 INFO [main] (BasicTestObject.java:285) - ======END Test workflow============
06/08/2015 00:18:47,100 DEBUG [main] (ProcessTool.java:36) - Getting current tool for LINUX
06/08/2015 00:18:47,100 WARN [main] (ProcessTool.java:40) - Could not find ProcessTool for LINUX
06/08/2015 00:18:47,101 WARN [main] (ProcessTool.java:88) - There was no ProcessTool for LINUX
06/08/2015 00:18:47,101 DEBUG [main] (ProcessTool.java:115) - process count for There was no ProcessTool for LINUX:1
Tests run: 12, Failures: 1, Errors: 0, Skipped: 11, Time elapsed: 1.976 sec <<< FAILURE!
Results :
Failed tests:
请提供一些关于这件事的技术细节。我可以在linux中运行此作业吗?请帮助我对于unix系统,您必须使用它以无头模式运行测试,对于jenkins,您可以使用 如何在headless模式下打开firefox的简单示例
谢谢你的回复,但还是有同样的错误。。你有没有在无头模式下运行脚本。不,你没有,首先你可以使用插件,它会为你做所有的事情
06/08/2015 00:18:47,002 WARN [main] (DebugUIDriver.java:311) - Called quit() on debugDriver containing null uiDriver
from xvfbwrapper import Xvfb
from selenium import webdriver
xf = Xvfb() # xf = Xvfb(1920, 1080) - will create virtual display with 1920x1080 size
xf.start()
# browser won't appear
driver = webdriver.Firefox()
driver.get("http://google.com")