Archive for the ‘Testing Tools’ Category

How to Convert a Visual Studio 2005 non-Test Project to a Test Project


Have you ever been in the position where you want to convert an already existing Visual Studio 2005 project to be a Test Project so that you can write and run unit tests? There is no simple way, but there is a hack.

Assuming that you are using a version of Visual Studio that supports Testing (e.g. Team Edition for Software Testers) here is how to do it:

  1. Add the following .NET Reference to the project:
  2. Put in the following using directive in the .cs file that contains your tests:
    using Microsoft.VisualStudio.TestTools.UnitTesting;
  3. Create a Test List, this will generate the .vsmdi file (This is the file that opens your Test Manager tab):

    1. Click Test in the top menu
    2. Select Create New Test List:

    3. Notice in the Solution Explorer that the Project now is wrapped in a Solution and the .vsmdi file has been created:

  4. Setup your test configuration file (.testrunconfig):

    1. In Solution Explorer right click the Solution Items folder, select Add, then select New Item
    2. In the dialog, highlight Test Run Configuration on the left and select Test Run Configuration on the right side
    3. Name the file accordingly and then click Add:
    4. Notice the .testrunconfig file has been added to the solution

  5. Close Visual Studio
  6. Open the project’s .csproj file in a text editor.
  7. In the top <PropertyGroup> node, change the <ProjectTypeGuids> node to read:

    If your using VB.NET your GUID should be:

  8. Save and close .csproj file.
  9. Open the Solution up (.sln file).
  10. You are now ready to write tests.
  11. To run your tests:

    1. In Solution Explorer double click the .vsmdi file to open the Test Manager window
    2. Check the test you want to run
    3. Right mouse click the test and select Run Checked Test.


This problem is quite interesting due to the fact that the .vsmdi file and .testrunconfig exist at the Solution level and not the Project level. In the past this interesting fact was a small hurdle for our automation team because we needed to create a Visual Studio template for a Test Project, but Visual Studio only templates Projects and not Solutions (again the .vsmdi & .testrunconfig need to exist at the .sln level). I’ll save the explanation of that workaround for another day!

Visual Studio 2008 Feature Comparison Between Editions


I’ve scoured the Web for this 3 times now. For your and my benefit I’ll store these hard to find links here for future reference…

Visual Studio 2008 Team Edition feature comparison:

Visual Studio 2008 Pro and Standard Edition comparison:

Keep in mind this blog isn’t just for you dear reader, it’s for my overwhelmed mind too…

I added IE 8 to the user agent switcher import file



The IE team announced what the user agent string for IE 8 will be:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0)

This particular one is for Vista. They’ve decided not to use the ‘b’ in ‘MSIE 8.0b’ for the beta version this time due to issues they’ve encountered in the past with that approach. I’ve updated my User Agent Switcher import file to contain the string for Internet Explorer 8 on Vista and XP. As always you can get to that file from the right menu under the “My Testing Tools” section: User-Agent Information and Tools. Load up the new file and go see if your browser detection script will work with IE’s new string.

I also updated it with FireFox 2.0.12 for Vista.

Silverlight Spy


imageI ran into another Silverlight snooping application today: Silverlight Spy

This one is pretty cool in the fact that you can point it towards a Web site/Silverlight application and it will allow you to peruse the plugin using i’ts XAML Explorer as well as change the properties and and actual XAML on the fly. Seeing tools like this tells me that automating a Silverlight application is easily doable. Flash on the other hand…an automation nightmare. I wish it would go away.

Here is the current feature list:

  • Convenient XAML object explorer
  • XAML object property grid allows for getting and settings property values
  • Regeneration of the XAML xml based on the object model
  • Statistics of used objects
  • Tracing facility for debugging Silverlight 1.0 applications

Download Silverlight Spy.

Silverlight Documentation.

Is Bugzilla dying?


Max has some interesting points about the long ago chosen language choice for the bug tracking tool Bugzilla: Perl. What is the popular Bugzilla’s future, due to the limitations of the Perl? It sounds like they are thinking about a rewrite. Can an open source product survive a transition of that magnitude? This will be interesting to see how it pans out. Open source failed me once, I hope it doesn’t fail the testing community.

User-Agent Information and Tools


I’ve decided to dedicate a spot on the blog for the user-agent information I’ve been providing over the last few years. From now on you can reference this post from the right navigation under the tools section.

Here are four very good lists and classifications of user-agents:


Here is my huge user-agent XML import file for use with the User Agent Switcher Firefox add-on: AgentStrings20080223.xml (19.67 KB). Read here how you can use this tool for testing. The current file contains the following user-agents for your browser spoofing pleasure:

Internet Explorer
MSIE 8 (Win Vista)
MSIE 8 (Win XP)
MSIE 7 (Win Vista)
MSIE 7 (Win XP)
MSIE 7 (Win Storage Server)
MSIE 6 (Win XP)
MSIE 5.5 (Win 2000)
MSIE 5.5 (Win ME)
MSIE 5.0 (Win 95)
MSIE 4.01 (Win 95)
MSIE 4.0 (Win NT)


FireFox 2.0.12 (Win Vista)
FireFox 2.0 (Win XP)
FireFox (Fedora Core 5/Linux)
FireFox (Debian Linux)
FireFox (Mac OSX)
FireFox (Win Vista)
FireFox 1.5 (Win XP)
FireFox 1.4 (Win XP)
FireFox 1.0.7 (Win XP)
FireFox 1.0.6 (Win XP)
FireFox 1.0.5 (SlackWare/Linux)
FireFox 1.0.4 (FreeBSD)
FireFox 1.0 (Win XP)
FireFox 0.9.3 (Win XP)


Opera 9.1 (Win XP)
Opera 8.0 (Win 2000)
Opera 7.6 (Server 2003)
Opera 7.51 (Win XP)
Opera 7.5 (Win XP)
Opera 7.5 (Win ME)
Opera 4
Opera 3
Opera 2
Opera 1


Netscape 8.1(Win XP)
Netscape 8.0.1 (Win XP)
Netscape 7.2 (Win 2000)
Netscape 7.1 (Win 98)
Netscape 4.8 (Win XP)
Netscape 4.76 (Win 98)
Netscape 4.5 (Win 98)
Netscape 4.05 (Win 95)
Netscape 3.01 gold (Win 95)
Netscape 2.02 (Win 95)


Safari 3.0 (v521)
Safari 2.0 (v418.9.1)
Safari 2.0 (v412)
Safari 2.0 (v401)
Safari 1.3 (v162)
Safari 1.3 (v158)
Safari 1.3 (v146)
Safari 1.2(v125.8; OSX 10.3.4)
Safari 1.1 (v100.1; OSX 10.3.2)
Safari 1.0 (v85)
Safari 1.0 (v74 beta 2)
Safari 1.0 (v73 beta 2)
Safari 1.0 (v64 beta)
Safari 1.0 (v51 update 1.0 beta)
Safari 1.0(v48 public beta)


AOL 9.0/MSIE 6.0 (Win XP)
AOL 8.0/MSIE 6.0 (Win XP)
AOL 7.0/MSIE 5.5 (Win 98)
AOL 6.0/MSIE 5.5 (Win 98)
AOL 5.0/MSIE 5.0 (Win 98)
AOL 5.0 (OS X)
AOL 5.0 (Mac PPC)
AOL 4.0/MSIE 3.02 (Win 95)
AOL 4.0/MSIE 4.01 (Win 95)
AOL 4.0 (Mac PPC)
AOL 4.0 (Mac 68k)
AOL 4.0/MSIE 3.0(Win 3.1)
AOL 3.0/MSIE 3.02 (Win 95)
AOL 3.0/MSIE 4.01 (Win 95)


Mozilla 1.7.8 (Linux)


Googlebot 2.1 (New version)
Msnbot 1.0
Msnbot 1.0 Beta (v0.11)
Yahoo Slurp
Ask Jeeves/Teoma

RSS Readers

NewsGator 2.5 (Win XP)
Feed Demon 1.6 (Win XP)
Bloglines 2.1
SharpReader (Win XP)

WAP Devices

Nokia 6630
Nokia 6100
BlackBerry 8703
iPhone (3.0 Mobile)


Google Toolbar 4.0
Hotbar 4.4.2
AskBar 3.0

iTunes 4.2 (OS X 10.2)
iTunes 4.7 (OS X 10.2)
iTunes 7.1.1 (Mac PPC)
Zune 2.0

Brent’s Web Testing Toolbox



Back in 2006 I wrote the article The $60 Web Testing Toolbox with the intent of providing a cheap set of Web testing tools for testers. Most of the tools were mentioned because they provided me the most bang for the buck, but the reality is that good testing tools sometimes cost money. I wanted to share with you my complete Web Testing Toolbox minus the cheap factor. Developing software is not cheap so why does testing of it have to be? For the most part, these tools are inexpensive and have proven to provide great value. In my experience, each and every one provides enough value to justify the cost. Keep in mind I’ve pretty much lived in a .NET environment since 2001, so some of the things in my list tend to lean in that direction.

I’ll keep this list updated as I see fit. I’ve provided a permanent link in the right navigation for permanent and quick access.

Visual Studio Team System for Software Testers
(MSDN Subscription)
Increase your productivity with comprehensive Web testing tools. These tools provide coverage for Web services, HTTP, XML, and streamlined for testing ASP.NET applications. With Visual Studio Team Edition for Software Testers you can use automated record playback functionality to reduce ramp up and to create and execute repeatable and maintainable Web tests.

How I use for Testing
I use it to automate Web browsers, talk to Web services, and query databases. The Testers Edition provides a GUI that allows you to manage, execute, and analyze reports for your “unit tests”. This is the biggest and most powerful tool in the toolbox.


Roboform is the top-rated Password Manager and Web Form Filler that completely automates password entering and form filling.

How I use for Testing

I have so many sites and logons that I need to provide on a daily basis. This tool is very useful when you are testing forms or signing on all day long.


Reflector is the class browser, explorer, analyzer and documentation viewer for .NET. Reflector allows to easily view, navigate, search, decompile and analyze .NET assemblies in C#, Visual Basic and IL.

How I use for Testing

I use this tool to investigate the internals of .NET assemblies when the source code is not available. Investigating allows me to understand better what I’m actually testing.

ViewState Decoder

Tool to decode the ViewState and control state in ASP.NET pages.

How I use for Testing

I use this tool to decipher the viewstate (base64) in an ASP.Net page (the big string in the HTML source). I also use the tool to validate that the viewstate is encrypted when sensitive data is found in the pages controls. See an example of how I use it here.


Through Paros’s proxy nature, all HTTP and HTTPS data between server and client, including cookies and form fields, can be intercepted and modified.

How I use for Testing

I use Paros for viewing and editing HTTP and HTTPS traffic as it flows through Internet Explorer. This is a great tool for bypassing client side validation or ripping out pieces of a page or script that limits your testing. See how I do cookie poisoning with Paros. I prefer Paros over Fiddler 2 because it’s cleaner and simpler for what I’m using it for.


HttpWatch is an HTTP viewer and debugger that integrates with Internet Explorer to provide seamless HTTP and HTTPS monitoring without leaving the browser window.

How I use for Testing

This tool resides within IE as an explorer bar and provides a quick and easy view of things such as caching, download time, and network operations. This tool doesn’t allow editing of the traffic but it’s convenience and cleanly presented data keeps it on the list. It also has a very nice API which is handy for automation.  See how it benefits my testing here.

Fiddler 2

Fiddler is a Web Debugging Proxy which logs all HTTP(S) traffic between your computer and the Internet. Fiddler allows you to inspect all HTTP(S) traffic, set breakpoints, and “fiddle” with incoming or outgoing data. Fiddler includes a powerful event-based scripting subsystem, and can be extended using any .NET language.

How I use for Testing

Tool for for viewing and editing HTTP and HTTPS traffic with Internet Explorer. Very robust but confusing. It has similar functionality to Paros.


A screen ruler for Windows.

How I use for Testing
A simple yet elegant tool to use tool to measuring pixels. See how I use it here.


Pixie is a color picker that includes a mouse tracker. Simply point to a color and it will tell you the hex, RGB, HTML, CMYK and HSV values of that color.

How I use for Testing
A small and easy to use tool to get the color codes of anything on your desktop or browser. This is nice to have when you are too lazy to dig through HTML source when you are trying to validate a color.

(Approx $5000)

Parasoft SOAtest is a comprehensive, collaborative test and analysis tool suite designed specifically for test and validation of Service Oriented Architectures. Parasoft SOAtest streamlines the process of rapidly constructing robust regression suites.

How I use for Testing
I’ve used SOATest for testing Web Services. It has a lot of bells and whistles and is good for those who don’t have the skill to dig into test a web service using .NET and Visual Studio. The regression and standards compliance features are life savers. See how I ranked SOATest against other Web Service test tools.
Kleptomania lets you select text anywhere on the screen, including areas that you cannot highlight with your mouse, such as columns of data from a word processor or error messages from any Windows program.

How I use for Testing
I use Kleptomania for capturing text in modal dialog boxes to paste into defects and taking screen clippings for defects . See how I use it here.
File Property Reporter
File Property Reporter analyzes a directory and all underlying subdirectories, and reports the directory structure, all the files names, and all the properties of the files.

How I use for Testing
I use this tool to take snapshots of web application directories before and after a build. I then do a diff on the two reports to see the changes between the snapshots. Created by yours me! See how I use it here.
SWEA automates Internet Explorer and provides solution  for functional test and regression test automation.

How I use for Testing
SWEA is a IE recorder as well as a .NET API that allows you to Automate Internet Explorer using C# or VB.Net. This is a very stable, powerful and robust way to do browser automation. For one year, with the help of the SWEA API and automation, I managed to stay a one man test team for a very complex enterprise application.
User Agent Switcher
Adds a menu and a toolbar button to FireFox for switching the user agent of the browser.

How I use for Testing
I use this to spoof/imitate user-agent strings for browser detection code. This is handy when you need to test browsers or Web app detection and the application is hard to install, setup or run in your test environment (Quicken, IE 4.0, etc…). See how I use it here.  Get an extensive user-agent list for import here.

Also, If you’re shopping for testing tools and you want an extensive list of what is out there, check out ApTest’s tools section.

Post navigation