First Looks

Test Partner 6.0: Test Application Screens

Check out this package for recording, editing, replaying, and logging test sequences.

TestPartner 6.0 is an advanced package for recording, editing, replaying, and logging test sequences for Windows-based applications.

The tool features extensive support for tracking the history of tests and comparing the results. Although TestPartner integrates with Visual Studio Team System, this review focuses on its use as a standalone tool for testing Web applications using Internet Explorer 7.

I put TestPartner on my Windows XP Pro workstation. The installation, which included SQL Server 2005 Express, was uneventful. TestPartner defaults to SQL Server, but you can configure it to use MSDE 2000, Access 2000, or recent Oracle databases for storing tests and results. When run, TestPartner displays a handy start screen that includes a link to a Visual Test tutorial. The tutorial provides a good orientation to an IDE that can be somewhat overwhelming without an introduction. In the walkthrough, you learn how to record and playback tests using a simulated e-commerce Web site hosted by Compuware. However, to enter the site, you need an account. It smacks of marketing department interference with documentation when you must register your name, address, phone number, and email address just to complete a tutorial.

Recording mouse clicks, keystrokes, and data for future playback is as easy as using the browser. Unlike recording a motion screen capture, there's no pressure to make your cursor movements fluid or well-paced; TestPartner is tracking your interaction with the screen's objects, rather than the length of your pauses.

The results of your recording appear in the impressive Visual Navigator window (Figure 1). Much thought has gone into its features, especially the Test Steps pane. Test Steps lists each recorded action in plain English such as "Enter password text."

Figure 1
[Click on image for larger view.]
Figure 1. Visualize and Revise Screen Tests.
TestPartner lets you review recorded steps as English text rather than as obscure computer code. You can also revise the steps within a visual environment simply by pointing to the replacement object in a screen preview.

You can also modify individual steps in the Navigator window. For example, assume you've recorded a long test run, but you now wish you had chosen a different option value. You don't have to reedit the code by hand or re-record the sequence; instead, you can go to the screen preview pane, click on a capture button, and point to the replacement option. The cursor reads the new control's name and value and inserts it into the script. This ability to refine and revise the script visually with a couple of clicks is an excellent feature and extremely valuable. Once you have a recorded sequence, you let TestPartner play it as a test. You can test for all sorts of screen characteristics and events including the appearance of text, bitmaps, menu items, tree nodes, and other controls. For example, you can point to a listbox on the preview page and instruct the script to repeat a sequence using each item in the list. This is valuable for checking screens with dynamic content.

Speaking of dynamic content, a good test is more than replaying a couple of hardcoded values. You can set up what Compuware calls an ActiveData asset, which retrieves external test data from an Excel spreadsheet, flat text, or comma-separated values file. An XML dataset would be a useful addition there.

TestPartner produces readable results broken down in Summary, Passed, and Failed tabs. In a visual environment like a Web page, you sometimes need a close look to see what happened. The screen preview pane offers side-by-side views so you can compare failed checks to the original recording. It might be that a screen or text difference turns out to be expected and normal. In that case, you can mark a failed check as an "expected result" and include a comment to inform future testers.

Compuware has hit a usability sweet spot in the TestPartner 6.0 release: a reasonable learning curve means average developers and non-technical users can be productive quickly. At the same time, quality control professionals will harness dozens of sophisticated and well-documented scripting features to build extensive test suites.

TestPartner 6.0
Compuware
Web: www.compuware.com
Phone: 800-521-9353
Price: $6100 (per concurrent user with maintenance)
Quick Facts: Advanced test automation tool for Windows-based environments; records and repeats screen tests and transactions; generates detailed reports; works as standalone software or integrated with Visual Studio Team System.
Pros: Easy to learn; plain English scripting language; wizards for many features like loops and logic; imports external test data; high-end options for professional testers; good documentation.
Cons: Expensive; no warranty (except on physical media) and no money-back guarantee.

About the Author

Ken Cox is a Canadian .NET programming writer and the author of "ASP.NET 3.5 for Dummies" (Wiley).

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube