我有一个项目使用cppunit进行单元测试,我使用QTtestrunner来显示结果,这里是代码
CPPUNIT_NS::QtUi::TestRunner testrunner;
testrunner.addTest (CPPUNIT_NS::TestFactoryRegistry::getRegistry().makeTest());
testrunner.run (true);
但是我在编译时收到以下消息:
src/main.cpp:78: undefined reference to 'CppUnit::QtTestRunner::QtTestRunner()'
src/main.cpp:79: undefined reference to CppUnit::QtTestRunner::addTest(CppUnit::Test*)'
src/main.cpp:80: undefined reference to CppUnit::QtTestRunner::run(bool)'
src/main.cpp:91: undefined reference to 'CppUnit::QtTestRunner::~QtTestRunner()'
我知道存在链接问题,但我包含了我需要的所有 libcppunit.a 和 libcppunit.so
Qt版本差异是问题所在。您可以下载这个补丁 它转换为 Qt3,然后您可以使用“qt3to4”将其转换为 Qt4。
当您使用 qttestrunner.a 库时,您还需要将 qt3 支持添加到您的 pro 文件中。
QT += qt3support