gpt4 book ai didi

java - 如何使用 TestNG 框架和 Jenkins 运行 Selenium 测试

转载 作者:行者123 更新时间:2023-11-29 08:39:47 25 4
gpt4 key购买 nike

我想使用 Jenkins 运行在 TestNG 框架中编写的 Selenium 测试。

在jenkins job(Freestyle项目)中配置的命令:

java -cp J:\taf\testng\*;J:\taf\workspace\TestNGExamples\bin;J:\automation\* org.testng.TestNG J:\taf\workspace\TestNGExamples\testng1.xml

注意:对于 -cp 参数,给出了 testng jar、测试类和 selenium jar 的目录路径

当我运行该作业(Build Now 选项)时,它在创建 Selenium session Activity 时遇到问题并给出错误。

注意:

当从命令行运行时,同样的命令运行成功

来自控制台输出的错误日志: (jenkins)

Started by user Naveen
Building in workspace C:\Program Files (x86)\Jenkins\workspace\TestNG Example
[TestNG Example] $ cmd /c call C:\Windows\TEMP\hudson2261889395366550414.bat

C:\Program Files (x86)\Jenkins\workspace\TestNG Example>java -cp J:\taf\testng\*;J:\taf\workspace\TestNGExamples\bin;J:\automation\* org.testng.TestNG J:\taf\workspace\TestNGExamples\testng1.xml
[TestNG] Running:
J:\taf\workspace\TestNGExamples\testng1.xml

1481801204206 geckodriver INFO Listening on 127.0.0.1:1387
Dec 15, 2016 4:56:44 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Attempting bi-dialect session, assuming Postel's Law holds true on the remote end
1481801204827 mozprofile::profile INFO Using profile path C:\Windows\TEMP\rust_mozprofile.KDz9DWYpWQAM
1481801204829 geckodriver::marionette INFO Starting browser C:\Program Files\Mozilla Firefox\firefox.exe
1481801204831 geckodriver::marionette INFO Connecting to Marionette on localhost:7795
1481801206090 Marionette INFO Listening on port 7795

###!!! [Parent][MessageChannel] Error: (msgtype=0x2E007D,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv

JavaScript error: resource://app/modules/ContentCrashHandlers.jsm, line 75: TypeError: browser.permanentKey is not a non-null object

###!!! [Parent][MessageChannel] Error: (msgtype=0x2E007D,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv

Dec 15, 2016 4:56:47 PM org.openqa.selenium.remote.ProtocolHandshake createSession
INFO: Detected dialect: W3C

###!!! [Parent][MessageChannel] Error: (msgtype=0x2E007D,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv

下面是测试类:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

public class SeleniumTests {

@Test
public void test1(){
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.co.in");
driver.quit();
}

}

下面是testng1.xml:

<?xml version="1.0" encoding="UTF-8"?>

<suite name="Default suite">
<test verbose="2" name="Default test">
<classes>
<class name="SeleniumTests"/>
</classes>
</test> <!-- Default test -->
</suite> <!-- Default suite -->

环境细节:

  1. Jenkins - 2.19.4(作为 Windows 服务)
  2. Java - 1.8
  3. TestNG - 6.8.5
  4. Selenium - 3.0.1
  5. 火狐 - 51
  6. 壁虎驱动程序 - 0.11.1
  7. 操作系统 - Windows 7 - 64 位

最佳答案

这不是 TestNG 或 Selenium 的问题。当 Jenkins 作为 Windows 服务安装时,有时会发生此错误。在 Tomcat 或 GlassFish 等 servlet 容器中安装 Jenkins,应该会有帮助。

关于java - 如何使用 TestNG 框架和 Jenkins 运行 Selenium 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41163291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com