Selenium IE 11在Jenkins Master Server上使用Nunit3-Console.exe测试



我有一个以C#编写的Selenium IE 11测试,该测试在调试或发行中本地运行时完美运行。该代码与詹金斯(No Slaves)一起部署到赢10箱。Jenkins的"构建"配置为构建代码,将test.dll复制到文件夹,然后致电Nunit3-console.exe运行测试。Jenkins服务还配置了域用户帐户为服务登录帐户。

我可以作为(Jenkins)域用户登录到Win 10 Box,然后打开CMD窗口并完全没有问题运行以下内容

c: program文件(x86) jenkins workspace prod login>" c: program文件 (x86) nunit.org nunit-console nunit3-console.exe" c: prod 登录 tests bin debug tests.dll

但是,如果您尝试通过Jenkins Web UI"构建"解决方案,则在Nunit测试中发现了一些单击并提交后找到一些元素的问题。

我知道IE配置是岩石固体的,就像我说的测试在命令窗口中运行良好时,登录为(Jenkins)域帐户

这是我遇到的错误:

microsoft.visualstudio.testtools.unittesting.assertfailedexception: 断言失败。 ProcessError* by.xpath: //输入[@lactholder ='用户名'],以下元素找不到: by.xpath://input [@占位符='用户名'],在75之后定时出版 秒;

我再次知道它不是定位器,而是在命令窗口中使用。

我不禁认为这与Jenkins和nunit

使用的身份有关

任何帮助都非常感谢!!!

**更新 我只是试图用服务帐户配置詹金斯"从" 作为Jenkins域用户运行,仍然没有运气...

我无法仅发表评论,但是我有一个调试建议。我知道您在说什么"选择器正常工作",所以我并不建议选择器以任何方式是错误的。但是,我确实建议在Failing命令之前进行测试播放页面源。driver.pagesource。并将其发布到某个地方。

这样,您可以确定驾驶员肯定会看到它可用的DOM中的元素。

这将有助于消除大量潜在问题。驱动程序总是有可能根本没有看到这些选择器所指向的HTML,即使我们可以用自己的两只眼睛看到它。

最新更新