所以我正在学习使用Java和Maven进行硒和詹金斯集成。 我在chrome和jenkins上遇到问题,并被告知我应该尝试使用firefox webdriver。 这就是我所做的。 但是,当我在jenkins上运行构建时,出现以下错误:有人可以帮助我吗? 我的脚本在IDE上本地运行良好。

我还使用了Mac 10.13.6(High Sierra),Firefox 70,Geckodriver v 0.26.0、3.141.59,Java eclipse ID和Maven 3.6.2

请帮忙,谢谢!

1)詹金斯纪录

Started by user Eamo Running as SYSTEM Building in workspace /Users/Shared/Jenkins/Home/workspace/test Parsing POMs Established TCP socket on 59937 [Test] $ /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home/bin/java -cp /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.13.jar:/Applications/apache-maven-3.6.2/boot/plexus-classworlds-2.6.0.jar:/Applications/apache-maven-3.6.2/conf/logging jenkins.maven3.agent.Maven35Main /Applications/apache-maven-3.6.2 /Users/Shared/Jenkins/Home/war/WEB-INF/lib/remoting-3.36.jar /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.13.jar /Users/Shared/Jenkins/Home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.13.jar 59937 <===[JENKINS REMOTING CAPACITY]===>channel started Executing Maven:  -B -f /Users/Eamon/eclipse-workspace/Test/pom.xml clean test [INFO] Scanning for projects... [INFO]  [INFO] ---------------------< SeleniumTest:SeleniumTest >---------------------- [INFO] Building SeleniumTest 0.0.1-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO]  [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ SeleniumTest --- [INFO] Deleting /Users/Eamon/eclipse-workspace/Test/target [INFO]  [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ SeleniumTest --- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! [INFO] Copying 0 resource [INFO]  [INFO] --- maven-compiler-plugin:2.3.2:compile (default-compile) @ SeleniumTest --- [INFO] Nothing to compile - all classes are up to date [INFO]  [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ SeleniumTest --- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent! [INFO] Copying 0 resource [INFO]  [INFO] --- maven-compiler-plugin:2.3.2:testCompile (default-testCompile) @ SeleniumTest --- [WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent! [INFO] Compiling 1 source file to /Users/Eamon/eclipse-workspace/Test/target/test-classes [INFO]  [INFO] --- maven-surefire-plugin:2.12:test (default-test) @ SeleniumTest --- [INFO] Surefire report directory: /Users/Eamon/eclipse-workspace/Test/target/surefire-reports  -------------------------------------------------------  T E S T S ------------------------------------------------------- Running TestSuite 1575090370363   mozrunner::runner   INFO    Running command: "/Applications/Firefox.app/Contents/MacOS/firefox-bin" "-marionette" "-foreground" "-no-remote" "-profile" "/var/folders/3n/x7zhpjbj00z7bm533_6x264r00008b/T/rust_mozprofileNeahYN" _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. 1575090375044   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: mozillaAddons 1575090375044   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: telemetry 1575090375044   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: resource://pdf.js/ 1575090375045   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: about:reader* _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. Exiting due to channel error. Exiting due to channel error. Exiting due to channel error. Tests run: 3, Failures: 1, Errors: 0, Skipped: 2, Time elapsed: 62.465 sec <<< FAILURE!  Results :  Failed tests:   startBrowser(Eamon.EamonTest): connection refused(..)  Tests run: 3, Failures: 1, Errors: 0, Skipped: 2  [ERROR] There are test failures.  Please refer to /Users/Eamon/eclipse-workspace/Test/target/surefire-reports for the individual test results. [JENKINS] Recording test results [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time:  01:16 min [INFO] Finished at: 2019-11-29T21:07:17-08:00 [INFO] ------------------------------------------------------------------------ Waiting for Jenkins to finish collecting data [JENKINS] Archiving /Users/Eamon/eclipse-workspace/Test/pom.xml to SeleniumTest/SeleniumTest/0.0.1-SNAPSHOT/SeleniumTest-0.0.1-SNAPSHOT.pom /Users/Eamon/eclipse-workspace/Test/pom.xml is not inside /Users/Shared/Jenkins/Home/workspace/Test/Users/Eamon/eclipse-workspace/Test/; will archive in a separate pass channel stopped Finished: UNSTABLE 

2)我的密码

public class EamonTest {      public String baseUrl = "http://demo.guru99.com/test/newtours/";     String driverPath = "/Users/Eamon/Desktop/geckodriver";     public WebDriver driver;      @BeforeTest     public void startBrowser() {         System.setProperty("webdriver.gecko.driver", driverPath);         DesiredCapabilities capabilities = DesiredCapabilities.firefox();         capabilities.setCapability("marionette", true);         driver = new FirefoxDriver(capabilities);      }      @Test     public void navigateToUrl() {         driver.get("http://demo.guru99.com/selenium/guru99home/");     }      @AfterTest     public void endTest() {         driver.quit();     } 

===============>>#1 票数:0

此错误消息...

1575090370363   mozrunner::runner   INFO    Running command: "/Applications/Firefox.app/Contents/MacOS/firefox-bin" "-marionette" "-foreground" "-no-remote" "-profile" "/var/folders/3n/x7zhpjbj00z7bm533_6x264r00008b/T/rust_mozprofileNeahYN" _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. 1575090375044   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: mozillaAddons 1575090375044   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: telemetry 1575090375044   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: resource://pdf.js/ 1575090375045   [email protected] WARN    Loading extension '[email protected]': Reading manifest: Invalid extension permission: about:reader* _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. _RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. Exiting due to channel error. Exiting due to channel error. Exiting due to channel error. 

...表示GeckoDriver无法启动/产生新的浏览上下文,Firefox浏览器会话。

您的主要问题是不赞成使用 FirefoxDriver 类的 构造函数 ,如下所示:

在当前版本的Selenium v​​3.141.59中 ,不建议使用构造函数FirefoxDriver(Capabilities desiredCapabilities)

所需能力


您需要使用MutableCapabilities 类中merge()方法将DesiredCapabilities类型对象合并为FirefoxOptions类型对象,并通过传递FirefoxOptions对象来初始化WebDriverWebClient实例,如下所示:

@BeforeTest public void startBrowser() {     System.setProperty("webdriver.gecko.driver", driverPath);     DesiredCapabilities capabilities = DesiredCapabilities.firefox();     capabilities.setCapability("marionette", true);     FirefoxOptions options = new FirefoxOptions();     options.merge(capabilities);     driver = new FirefoxDriver(options); 

参考文献

您可以在以下位置找到一些相关的讨论:

  ask by Eamon Mac translate from so

本文未有回复,本站智能推荐: