使用selenium测试sharepoint的问题(超时,重复身份验证和错过的链接)

时间:2011-08-09 19:36:08

标签: sharepoint selenium timeout authentication

我在使用硒/溴测试sharepoint网站时遇到了一些严重问题。由于我没有通过各种搜索找到答案,我希望有人能指出我正确的方向。

  1. 我不断打开主页面的超时时间,但服务器的速度非常快,足以应答请求并且90%空闲。不过我只是得到这样的日志:

    open    http://username:passwd@10.13.110.54/default.aspx     | Timed out after 90000ms  
    Test terminated The selenium server did not return OK
    
  2. 虽然每个打开的命令都使用http://username:passwd@10.13.110.54/作为前缀

  3. ,但是auth弹出窗口会不定时地弹出(每5到10次点击)
  4. 单击元素有时未注册,日志显示成功

    isElementPresent    link=myLink
    click   link=myLink
    
  5. 但浏览器没有反应。这些主要是页内链接,用于打开新文件夹或编辑框。

    我不确定是否应该在三个单独的问题中发布,但我不想发送垃圾邮件。

    希望有人可以帮助我,因为我现在有这些问题将近3周。

    提前致谢 托马斯

1 个答案:

答案 0 :(得分:0)

对于你的问题2:好的,这是一个非常晚的回复。我偶然发现这个页面正在寻找答案。鉴于我在此期间已经解决了这个问题,我想我会发布我的答案,以便其他人绊到这个页面上。

一般解决方案:

您需要创建或使用一个配置文件,让firefox自动将您的凭据转发到sharepoint网站。您可以手动创建配置文件并每次调用它,有关说明,请参阅https://applicationtestingtips.wordpress.com/2009/12/21/seleniumrc-handle-windows-authentication-firefox/


程序员解决方案:(在python中运行,在Java中应该类似)

或者您可以每次动态创建新的个人资料。我是根据前面提到的网站上的信息做到的。我使用python来调用selenium,但是在你用来调用selenium的语言中这应该是相似的:

sharepointHosts = 'sharepoint1.mycompany.com,sharepoint2.mycompany.com' #have all your sharepoint hosts here in a comma-separated list
ffProfile.set_preference('network.automatic-ntlm-auth.trusted-uris', sharepointHosts)
ffProfile.set_preference('network.negotiate-auth.delegation-uris', sharepointHosts)
ffProfile.set_preference('network.negotiate-auth.trusted-uris', sharepointHosts)

driver = webdriver.Firefox(firefox_profile=ffProfile)