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

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

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

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

注意:对于-cp argument,给定目录路径testng jar, test classes, and selenium jar

当我运行作业(Build Now选项)时,它被Selenium的create session活动打中并给出错误。

同样的命令运行 从运行时 。

(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. Firefox-51
  6. gecko-0.11.1
  7. os-Windows 7-64位

回答:

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

以上是 如何使用TestNG框架和Jenkins运行Selenium测试 的全部内容, 来源链接: utcz.com/qa/418422.html

回到顶部