Tuesday, November 24, 2009

Performance Testing with Visual Studio 2008

I'm back at the controls of Visual Studio Team Test edition (2008 this time, woo hoo) loading and running performance tests against some software I'm developing. This time round I am doing basic analysis to see where potential bottlenecks lie, and to spot any memory issues whilst there is still plenty of time to fix these.

However, I had some difficulty getting my tests recorded - turns out there are a few things you need to bear in mind if your test client is Windows 7, Server 2008 or Vista, mainly around the enhanced security configuration (Server 2008) and IE security. Basically, if during your test you switch from one internet "zone" to another - for example, from "about:blank" to an actual website - then IE will kill the original iexplore process and launch a new one. Very secure, but it kills the ability to record web tests until you sort it out.

I found a great blog site run by Michael Taute that lists pretty much all the reasons why this behaviour can happen, and what to do about it. In my case I switched off the enhanced security configuration for administrators, and added "about:blank" to the same internet "zone" as the site I was testing.

See Michael's blog page for the full list of issues and fixes.

Oh, and if, like me, you're an idiot, you'll find your load test doesn't work if you don't create the load test database before you start. There are a few steps to remember before you start testing, as detailed by Travis Lingenfelder.