Review: TestPartner 5.4

TestPartner 5.4
Compuware.
Detroit, Michigan
(313) 227-7300
http://www.compuware.com/products/qacenter/375_ENG_HTML.htm

Visual Studio Team Suite contains an awful lot of different pieces - but it doesn't have everything that everyone in your organization could possibly want. One area that's lacking is automated functional and regression testing. Yes, VSTS lets you build tests within your code - but what happens when you want to test the finished product? That's where a product like Compuware's TestPartner comes in. TestPartner lets you record a series of interactions with a Windows or Web application - focus changes, data entry, button clicks and so on - and play them back later. It can also recognize what's going on on-screen, so as to verify the state of the application. Put these two pieces together, and you have a way to test whether particular behavior leads to expected results, which after all is the point of testing.

The recording and playback piece is quite easy to use, and it won't take you long to start building tests with TestPartner. Test scripts are stored in VBA, and they're smart enough to recognize controls rather than just working from screen coordinates, which makes testing much less brittle. If you look at the source for a recorded script, you'll see things like this:

 ' Attach to Name=ValueText
DotNETEditBox("Name=ValueText").Attach
DotNETEditBox.Type "234"
DotNETButton("Name=EnterButton").Click

Anyone who's worked with VB or VBA will find this language easy to understand and work with; Compuware has licensed the full VBA editor, so you have all the familiar tools for working with and editing scripts, as well as debugging and running them. You also get some things that specifically make testing easier. My favorite is the ActiveData Wizard, which makes parameterized testing easier. Consider the task of testing a customer data entry scenario in a Web application. To do this right, you want to test a bunch of variations: does it work if you leave out the zip code? What about customers with very long names? Customers in foreign countries? And so on. A good tester can easily come up with dozens of variations on a functional test, all of which ought to be part of a test suite. With TestPartner, you record the test once, and then create a text or CSV file containing the data that should go into various parameters. A simple wizard walks you through hooking the data file up to your script, and you've now got your dozen or more tests.

TestPartner 5.4 also offers good capabilities for exporting and importing tests between TestPartner databases (useful in these days of distributed and offshore teams), as well as support for applications built with the latest .NET, Java, and SAP technologies.

All of TestPartner's functionality is available from its own IDE. If you've got the Visual Studio Team Edition for Testers installed, though, direct integration with VSTS lights up as well. This allows you to create new TestParter tests from within the Visual Studio IDE, run tests as part of a mixed set of VSTS and TestPartner tests, view results directly in the IDE, and so on. The integration is quite deep and well-done.

Like Compuware's other products, you can buy TestPartner standalone or as part of a suite. TestPartner fits into QACenter Enterprise Edition, where it hooks into things like requirements tracking and test data generation to give you end-to-end tracking and testing over the entire software development lifecycle. You'll want to contact Compuware to learn more about pricing and packaging, depending on how much of this whole solution you're interested in buying into.

  Click for larger screenshot

Mike Gunderloy is the lead developer for Larkware and author of numerous books and articles on programming topics.

Published June 1, 2006