80 likes | 291 Views
CTK Hackfest Testing framework. November 2011 Inria – Sofia Antipolis. MITK. Custom testing framework
E N D
CTK HackfestTesting framework November 2011 Inria – Sofia Antipolis
MITK Custom testing framework intmitkMyTest(int , char* []) { MITK_TEST_BEGIN(“MyTest");intvalue = 10; MITK_TEST_CONDITION_REQUIRED( value < 100, “My Test Message"); MITK_INFO << value; MITK_TEST_END();}
GIMIAS • TestSuite • CppUnit • (JUnit for C++) • optionally using old QtTestRunner • CxxTest • JUnit and CppUnit like • lightweight
Qt Testing #include <QtTest/QtTest>class TestQString: public QObject{ Q_OBJECTprivate slots: void toUpper() {QStringstr = "Hello"; QCOMPARE(str.toUpper(),QString("HELLO")); }}; QTEST_MAIN(TestQString)#include "testqstring.moc"
MAF3 Wrapper around QTest
Google tests // Tests factorial of negative numbers.TEST(FactorialTest, Negative) {// This test is named "Negative", // and belongs to the "FactorialTest“ // test case.EXPECT_EQ(1, Factorial(-5));EXPECT_EQ(1, Factorial(-1)); EXPECT_TRUE(Factorial(-10) > 0);} RUN_ALL_TESTS() in main().
Suggestion for CTK • Use QtTest? • Offers the same as in CxxTests, Google Tests • Eventually add macros on top to register tests • What’s missing ? • Mix of MITK / MAF ? • How about Python ? • How about GUI testing ?
QtTest: http://doc.qt.nokia.com/stable/qtestlib-tutorial1.html