Menu

[r321]: / trunk / cppunit / TODO  Maximize  Restore  History

Download this file

61 lines (54 with data), 2.8 kB

* CppUnit:
  - Update MfcTestRunner to use TestPath to store test in the registry
  - Provide a mean for the user to catch 'custom' exception in TestCase::run 
    (exception that do not subclass std::exception, such as MFC CException, or
    RogueWave RWXMsg).
  - [DONE] Custom Test macro helper
  - Hook for XmlOutputter, to allow user to add extra information to the XmlDocument
    (test & doc level).
  - Allow test plug-in to 'hook' the XmlOutputter when used.
  - TextUi::TestRunner should use CppUnit::TestRunner as a base class
  - Modify MfcUi::TestRunner to expose TestResult (which allow specific TestListener
    for global initialization).
  - [DONE]Make Exception message more flexible: introduce a Message object which contains:
    - a short description ('assertion failed', 'equality assertion failed'...)
    - detail strings: "Expected : 3", "Actual   : 5"...
    => this provide a structured way to specify failure details, and let the ouputter
    (or ui) format them for display.
  - Extends CompilerOutputter to a generic text outputter that can use a format string
    to display both the location of the failure and the message.
  - STL orthodox template for container elements.
  - Memory leak tracking: setUp/tearDown should be leak safe if no failure occured.

* UnitTest
  - add tests for XmlOutputter::setStyleSheet (current assertion macro strip <?...> when
    testing )
  - add tests for TestRunner, TextUi::TestRunner, CompilerOutputter.
  - add tests for test plug-in

* VC++ TestRunner:
  - Make it possible to specify the registry path where settings are stored.
    Current method use the path defined in the CWinApp. This does not work
    for console application
  - Add "details" field to show detail of the selected failed test:
    - suite and test name,
    - failure message. If possible separate "was" and "expected" in the
      forthcoming assertEquals() to make comparison easier,
    - source file location. 
    
* BugFix: CompilerOutputter::wrap(), bug when wrapping empty line in the middle 
of a text (they disappear).    

* Documentation:
	CookBook:
	- how to create simple test cases (with CppUnit namespace)
	  - test case using only CPPUINT_ASSERT
	  - test case using CPPUNIT_ASSERT_EQUAL
	  - advanced assertions with the CPPUNIT_ASSERT_MESSAGE
	- Helper Macros for convenience
	- Creating a suite
	- Composing a suite from more suites (i.e. compose tests for n modules to
	  form a big test for the whole program)
	- customizing output using an user defined TestListener
	  - how to write the TestListener (subclass of TestListener)
	  - how to hook it in
	- how to use the GUI
	  - MSVC++ special stuff
	- other custmization stuff I haven't understood yet

	CppUnit: architecture overview.

MongoDB Logo MongoDB