QTestLib

Tworzymy programik o treści:

#include <QtTest/QtTest>

class TestQString: public QObject
{
    Q_OBJECT
private slots:
    void toUpper();
};

void TestQString::toUpper()
{
    QString str = "Hello";
    QCOMPARE(str.toUpper(), QString("HELLO"));
}

QTEST_MAIN(TestQString)
#include "testqstring.moc"

oraz plik testqstring.pro o treści:
SOURCES += testqstring.cpp
CONFIG  += qtestlib

Kompilacja w konsoli:

kris@sphinx:~/workspace/testqstring> qmake -project "CONFIG += qtestlib"
kris@sphinx:~/workspace/testqstring> qmake
kris@sphinx:~/workspace/testqstring> make

Notatka:
Jeśli program pisaliśmy w Qt Creator to naciskamy jedynie Uruchom.

Pliki po kompilacji:

kris@sphinx:~/workspace/testqstring> ll
razem 604
-rw-r--r-- 1 kris users   7019 04-07 14:35 Makefile
-rwxr-xr-x 1 kris users 262569 04-07 14:35 testqstring
-rw-r--r-- 1 kris users    272 04-07 14:35 testqstring.cpp
-rw-r--r-- 1 kris users   2277 04-07 14:35 testqstring.moc
-rw-r--r-- 1 kris users 328476 04-07 14:35 testqstring.o
-rw-r--r-- 1 kris users     47 04-07 14:35 testqstring.pro

Uruchomienie:

kris@sphinx:~/workspace/testqstring> ./testqstring
********* Start testing of TestQString *********
Config: Using QTest library 4.6.3, Qt 4.6.3
PASS   : TestQString::initTestCase()
PASS   : TestQString::toUpper()
PASS   : TestQString::cleanupTestCase()
Totals: 3 passed, 0 failed, 0 skipped
********* Finished testing of TestQString *********