Automated Unit Testing
About Automated Testing
The links below are are derivatives of these pages in the ExtremeProgramming ? wiki:
With Java
- The "Extreme Programming Explored" book goes into good depth on unit testing, refactoring, and so forth using Java.
With Visual Studio .NET (C#)
- X-Unity: a simple and intuitive testing framework for an MS .NET development, whether it is C#, VB, or other CLS-compatible languages. http://x-unity.miik.com.ua/
- csUnit - Inspired by JUnit, csUnit brings the power of unit testing to the .NET framework. csUnit is your key to test-driven development using .NET languages including C#, Visual Basic .NET, J#, and managed C++. It is open source and freely available at http://www.csunit.org. csUnit supports VS.NET 2002 and VS.NET 2003 Final Beta (Everett). All tests are run in a separate thread, and it is possible to load several assemblies containing tests at once. The GUI has been reviewed by a UI expert, and the tool is used in commercial projects with up to more than 1,000 tests.
- NUnitAsp - unit testing for ASP.NET. Yes, it can be done. It is a class library that uses/extends NUnit. Essentially it makes it very easy to script out a simple web client that requests pages from your web server. It even handles multi-page forms, form elements, checks for strings in result pages, links, etc. I wonder if Perl/PHP has this? http://nunitasp.sourceforge.net
With C/C++
- A good document about ParaSoft's c++test, which includes a good overview of why to unit test, and how to do it to improve quality and faults: http://www.swen.uwaterloo.ca/~knaik/453/cpptest_wp.pdf This application generates a testing framework (harness) and stub tests for each function, ready to be fleshed out. It will generate tests for functions as soon as they are compiled, so that bugs get found as soon as possible. It also performs automatic white-box testing. It also does CoverageMonitoring ?, an interesting concept of how effective the tests are... so that one does not get a FalseSenseOfSecurity ?. See http://www.parasoft.com for more info about the product.
With web services
- Web::Test: "This module runs tests on remote URLs containing Perl/JSP/HTML/JavaScript/etc. and generates a detailed test report." Seems pretty feature complete. Makes it pretty to test if the "save" button works on a form, and if the data actually got updated in the backend. Works with Test::Harness as well. http://search.cpan.org/author/ILYAM/
- RoboWeb: "... a suite of Perl scripts that allow for recording live user
browsing sequences and insert assertions during them to later reproduce
and automatically verify correctness of output of a web application." http://sourceforge.net/projects/roboweb/
Back to Programming, Testing