wxTest

A C++ Testing Framework


What Is wxTest?  |  Downloads/CVS  |  Documentation  |  Road Map  | SourceForge


What Is wxTest?

wxTest is a test framework designed in the tradition of the xUnit family. It's used to create automated test suites for C++ code. wxTest consists of an interface specification between tests and test-runners, in the form of abstract virtual C++ classes. Tests can be either test-cases (a single test) or a test-suite (a collection of test-cases or other test-suites). Test are linked into test modules ( .dll's, .shlb's .so's ). Test-runners dynamically load the test modules, execute the tests, and collect the results. The interface between tests and test-runners facilitates complete binary decoupling between the test runners and the test modules.

wxTest includes a a base implemenation for test-cases and test-suites that implement most of the boilerplate behavior required by the interfaces. Tests are created by deriving from these existing base classes. wxTest also includes two test-runners applications: text-only one more feature rich GUI test-runner.

Despite the 'wx' prefix, wxTest can be used to test any C++ code, not just code that uses wxWindows. The interface between tests and test runners is pure C++ and has no dependency to wxWindows. wxTest includes two implementations of test runners: a GUI and a text-only version.

Currently only Win32 is supported. Future version will contain support for Macintosh (Metrowerks CodeWarrior) and Linux (gcc).



Download / CVS


The latest stable version of wxTest is 0.1 (currently only available for Win32).

Download: wxTest-0.1.zip

To obtain the latest source from CVS, use the following commands. When prompted for a password for anonymous, simply press the Enter key.
 
cvs -d:pserver:anonymous@cvs.wxtest.sourceforge.net:/cvsroot/wxtest login 
 
cvs -z3 -d:pserver:anonymous@cvs.wxtest.sourceforge.net:/cvsroot/wxtest co wxTest 

Road Map

Here's what the future holds for wxTest:
Version 0.2
  • Macintosh build projects (CW6/7)
  • More documentation
Version 0.3
  • Linux (gcc) make files
  • More documentation
Version 0.4
  • More GUI Test Runner features
Version 1.0
  • Stabalize feature set from previous release
  • Finalize documentation