当前位置: 首页 > 面试题库 >

Selenium测试在Jenkins运行时失败,但在命令行运行时成功

云宏儒
2023-03-14
问题内容

我有两个运行Windows Server
2012的虚拟机。一个运行Jenkins,另一个运行Jenkins的构建作业之一。作业从Subversion中检出测试代码,然后mvn test-Dtest=com.package.name.TestName在Windows批处理脚本中运行。该测试可以编译并运行,但是会失败,并显示ElementNotVisibleException。这些是使用Selenium和Firefox驱动程序的TestNG测试。

如果我使用完全相同的命令并从Windows命令行运行它,则测试成功。我注意到的另一件事是,从命令行运行时,浏览器窗口出现,并且我可以观察它在测试中的运行情况,但是当由Jenkins运行时,没有窗口出现。

我发现这个问题表明这是因为我们的Jenkins是作为服务运行的,并且编写测试时需要在前台使用浏览器窗口。更改测试以使用无头驱动html" target="_blank">程序不是我们的选择,因为这将导致测试结果不准确。有没有办法让这些测试与詹金斯一起工作?


问题答案:

我建议使用Selenium Grid。它的显式功能是同时服务几个不同的测试。

您的詹金斯将针对网格触发测试,该测试会将所有测试指向您的节点。



 类似资料:
  • 我有一个运行selenium phpunit测试的ant构建脚本。我可以在命令行上运行构建脚本,然后看到测试正在进行,浏览器窗口打开,并且selenium测试正在执行。命令行上一切正常。 但是,如果我得到创建一个jenkins jobs来运行构建脚本。它在尝试运行phpunit任务时失败。这是控制台输出。 看起来,当jenkins运行构建时,它不能访问Selenium。请参阅“访问被拒绝”和“网页

  • 当我在命令行中运行TestNG时,抛出异常: c:\test>java org.testng.testng testng.xml线程“main”java.lang.noClassDefounderror:com/beust/jcommander/parameterexception在java.lang.class.getDeclaredMethods0(本机方法)在java.lang.class.

  • 软件版本:jenkins版本1.478 selenium独立版本2.25 chrome驱动程序版本chrome版本21 PHPunit 3.6.10 PHP webdriver绑定http://code.google.com/p/php-webdriver-bindings/Ubuntu11.10使用GUI 概要:在一个新的终端窗口中,我运行java-jar-selenium-server-sta

  • 问题内容: 即使我这样做,在64位Windows上运行也会给我以下错误: 问题答案: 请确保您使用的版本,并且您有选项(如记录在这里)。 例如: 这将创建一个带有清单的jar,该清单可以重新创建您的类路径(而不是通过变量设置它,这是受Windows命令行限制问题影响的方法)。

  • 当我保存的项目和测试在Selenium IDE GUI中运行时,这很好,但是当我执行通过命令行侧运行程序调用的相同测试时,它会失败。问题似乎是链接文本不可见,但我不明白为什么它会失败,当它运行良好的GUI形式。 您可以看到最后一步(8)已通过,参考链接文本 然后,我将项目保存在本地文件夹中 然后使用side runner命令再次运行它 元素点击拦截:元素公司项目/程序/事件(CORP)在点(798