开发者

problems testing sharepoint with selenium (timeouts, repeating auth and missed links)

I have some serious problems testing a sharepoint site with selenium/bromine. As I did't find an answer via various searches I hope someone here can point me in the right direction.

  1. I am constantly getting timeouts opening the main page, but the server is definetly fast enough to answer the request and at 90% idle. Nevertheless I just get logs like these:

    open    http://username:p开发者_JAVA技巧asswd@10.13.110.54/default.aspx     | Timed out after 90000ms  
    Test terminated The selenium server did not return OK
    
  2. The auth popup is popping up at irregular intervals (every 5 to 10 clicks) although every open command uses the http://username:passwd@10.13.110.54/ as prefix

  3. Clicking on elements is sometimes not registered, the logs show a successful

    isElementPresent    link=myLink
    click   link=myLink
    

but the browser doesn't react. These are mainly in-page links which open a new folder or an editing box.

I'm not sure whether I should have posted the in three separate questions, but I didn't want to spam.

Hope someone can help me, as I have these problems now for nearly 3 weeks.

Thanks in advance Thomas


For your question number 2: Okay, this is a really late reply. I stumbled on this page looking for the answer myself. Given that I have solved it in the meantime, I figured I'd post my answer for other people stumbling onto this page.

General solution:

You need to create or use a profile that will let firefox automatically forward your credentials to the sharepoint website. You can create the profile manually and call it each time, see https://applicationtestingtips.wordpress.com/2009/12/21/seleniumrc-handle-windows-authentication-firefox/ for instructions.


Programmer solution: (works in python, should work similarly in Java)

Or you can create a new profile on the fly each time. I did that based on the information in the previously mentioned website. I use python for calling selenium, but this should be rather similar in whatever language you use to call 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)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜