我们定义了一个TFS(2013)版本,它针对解决方案中的网站运行Selenium测试项目(chromedriver)。如果由任何开发人员在本地运行,则其中三个测试当前失败。构建代理与tfs构建控制器位于一个单独的框中,并在本地管理员帐户下运行。
如果代码都已签入,如果构建由三个开发人员手动触发,则按预期工作 - 三个测试失败。但是,如果构建是由其他两个开发人员中的任何一个启动的,那么几乎所有的测试都会失败,或者使用...
System.InvalidOperationException: unknown error: cannot focus element
或
OpenQA.Selenium.NoSuchElementException: no such element
......错误类型。
所有开发者在TFS中拥有相同的权利。任何人都可以建议请求用户的ID应该能够影响远程运行和不同凭据下运行的构建的结果吗? (任何解决方案也将不胜感激!)
答案 0 :(得分:1)
这似乎是由于网络上的AD组搞砸了。
由于原始用户的凭据实际上已转移到构建过程,而不是正在使用的本地管理员凭据,因此我们(最终)在开发人员之间发现了一些不同的AD成员资格,这些成员资格影响了构建中某些文件夹的权限框,阻止某些资源被访问。
不幸的是,Selenium提出的错误是完整的红色鲱鱼并隐藏了实际原因 - 在我们实际在构建服务器上根据各种开发人员的凭据在本地运行构建之前很难诊断。