1

每次我尝试使用 Jenkins 执行测试用例时,我的测试报告中都会显示以下 Java 错误。

错误一:

java.lang.IllegalArgumentException:没有枚举常量类 org.openqa.selenium.Platform.Windows 2003 在 org.openqa.selenium.Platform.valueOf(Platform.java: 30) 在 WebDriverWithHelperTest.setUp(WebDriverWithHelperTest.java:76) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) ) 在 java.lang.Thread.run(Thread.java:619) ... 删除了 22 个堆栈帧

错误2:

java.lang.NullPointerException:方法不应该在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) 在java.lang.Thread.run(Thread.java:619) ... 删除了 17 个堆栈帧

我可以毫无问题地使用 Eclipse 和 Maven 执行这些测试用例。

有什么建议吗?

4

3 回答 3

1

对于 Jenkins 作业,检查注入的环境变量,并将它们与从 eclipse 运行作业时设置的所有 jar 和其他环境变量进行比较。在运行 Jenkins 的测试时,确保您拥有所需的一切

于 2013-02-09T06:07:06.090 回答
0

您可以尝试从此更改代码:

capabilities.setCapability(CapabilityType.PLATFORM, Platform.valueOf(System.getenv("SELENIUM_PLATFORM"));

对此:

capabilities.setCapability(CapabilityType.PLATFORM, System.getenv("SELENIUM_PLATFORM"));

Jenkins 插件发送的是平台的值,而不是 org.openqa.selenium.Platform 的枚举查找值

于 2013-02-10T01:03:37.077 回答
0

谢谢 Roos,它现在解决了,我通过 Jenkins 配置发送身份验证信息,而不是在设置所需的作业/构建期间从 OnDemand 插件覆盖它。

于 2013-02-15T06:17:25.307 回答