我在我的服务器上本地运行的TeamCity服务器上运行Selenium Nunit测试。我遇到的问题是一些测试通过,其中一些测试失败了。然而,当我通过手动打开视觉工作室并从那里运行测试来运行相同的测试时,他们似乎已经过去了。
我尝试重新启动TeamCity服务器,尝试清理所有文件。删除文件并重建所有内容似乎没有任何效果。测试并让它们运行没有任何问题,只有当测试通过视觉工作室手动运行时相同的测试通过断言时,测试才会失败。
关于可能导致这种情况的任何想法?
答案 0 :(得分:0)
一种可能性是您的TeamCity正在使用本地系统的不同版本的NUnit。另一个是TC默认生成NUnit项目文件并使用它运行测试而不是直接执行程序集。
答案 1 :(得分:0)
我遇到与Teamcity服务器相同的问题,我的配置是带有Nunit和Selenium Webdriver的Visual Studio。
你可以做什么,这有助于我为那些在页面上动态加载的元素设置Wait方法。当TeamCity代理在VM上运行构建时,测试在无头模式下运行,TeamCity默认情况下,配置没有Wait / Thread.Sleep。 @ chillax786
答案 2 :(得分:-1)
如果使用不可点击的元素,特定测试始终为false,那是因为您在TC服务器上使用的Web驱动程序的分辨率与本地不同。
如果此测试有时会引发此错误,那是因为您的网站在TC服务器上的响应速度比本地快,因此有时候您无法点击元素。
您必须确保(在代码中的某个位置)您可以在使用元素时单击它们。
我在SPA网站遇到过这类问题。
我写了一个看不见的跨度,我标记我的页面已经准备就绪。
随着这个看不见的跨度的增加,我再也没有看到过这个问题了。