How to run CPPUnit unit tests
Solution 1
Group your TestCases into TestSuite, write a main(), compile, link against the cppunit library and run the executable from the command-line.
Here is an example of a main function.:
CPPUNIT_TEST_SUITE_REGISTRATION(Test);
int main( int ac, char **av )
{
//--- Create the event manager and test controller
CPPUNIT_NS::TestResult controller;
//--- Add a listener that colllects test result
CPPUNIT_NS::TestResultCollector result;
controller.addListener( &result );
//--- Add a listener that print dots as test run.
CPPUNIT_NS::BriefTestProgressListener progress;
controller.addListener( &progress );
//--- Add the top suite to the test runner
CPPUNIT_NS::TestRunner runner;
runner.addTest( CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest() );
runner.run( controller );
return result.wasSuccessful() ? 0 : 1;
}
If you really want a GUI, there is QxRunner.
Solution 2
I would suggest people to use cppunit in visual studio if you are on windows and if you are testing for C++. How to configure cppunit in visual studio and how to use it with example? if you have downloaded the cppunit file. Then in your visual studio project you need to set few things
1). Give the path of include folder inside your cppunit file at location of your visual studio project, Project properties > C/C++ > General > Additional include directories.
2). Give the path of lib folder inside your cppunit file at location of your visual studio project, Project properties > Linker > General > Additional library directories.
3). Add a file "cppunit.lib" at location of your visual studio project, Project properties > Linker > Input > Additional Dependencies.
Follow the step by step procedure in the link below
http://www.areobots.com/unit-testing-with-cppunit-visual-studio-configuration/
http://www.areobots.com/how-to-do-unit-testing-with-cppunit-with-example/
Comments
-
Uday almost 2 years
I have written few c++ Unit tests using CPPUnit.
But I do not understand how to run those.
Is there any tool like Nunit-gui?
Currently I have written and packed tests in a DLL.
When i google i found this http://cppunit.sourceforge.net/doc/lastest/cppunit_cookbook.html
But I am not able to understand how it gets tests from a DLL.