I Just Fixed an Odd Timeout Error With Our CruiseControl.net/NAnt/WatiN Setup

The problem:

I have this project I’m working on that uses WatiN WatiN is a tool to write tests for web applications by controlling an Internet Explorer window. to test an asp.net site. For some reason some tests would fail with a timeout trying to find an element or waiting for an element to show up after an UpdatePanel postback. It would go through about half the test before stopping, it was able to open the browser, click buttons, type text, etc.

I couldn’t figure it out. I ran the tests from the command line with NAnt, but they all worked then. They all worked when I ran them from localhost. I put [Ignore] attributes on most of the tests, I used MSE MSE: Managed Stack Explorer. It will connect to a .net process and give a stack trace of where it is currently. looking for deadlocks. I couldn’t figure it out for the longest time.

The Solution:

Finally I went to Windows Update on the build server. I thought maybe my workstation has some patch that is not on the server yet. When I got there it told me that due to being on the internet zone, instead of the trusted zone, it couldn’t do it’s stuff. This got me thinking an eventually I went to the url the tests were hitting and that wasn’t in a trusted zone either.

Adding the urls to the local intranet zone fixed all my problems. I’m not sure if the security was restricting WatiN or the msajax library. I’d suspect the ajax stuff just because it seems like WatiN isn’t going to be restricted by IE’s security features.

Posted in Software Development and tagged . Permalink.

2 Responses to I Just Fixed an Odd Timeout Error With Our CruiseControl.net/NAnt/WatiN Setup

  1. Hey David, I’m running into a similar problem — CC.NET on a W2K3 server. I suspect it’s the user account that I’m executing the CC.NET service under. How have you got your CC.NET service configured?

  2. Hello Bryan, currently I am running CC.NET as a console application under a local machine account. I have a shortcut to ccnet.exe that I run each time the machine reboots. This let us run some apps that needed a full Windows environment (like a web browser).

    It’s been long enough since I ran it as a service, that I can’t remember what user account I was using. The user account I am using now is a local user that has admin access to the whole buildserver.

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>