Seite 1 von 1

Unittests mit Qt

Verfasst: 14. Mai 2009 19:04
von Rollo1979
Einmal wieder eine Frage zu Tests mit Qt, diesmal zu Unittests und zwar zur effizienten Organisation von Unittests.
Ich habe ein Produktivprojekt (ProductionProject2) und ein eigenes Testprojekt für die Unittests. Als Beispiel möchte ich eine Methode StringProcessor::trimString(string) testen.

Die zu testende Klasse binde ich über
#include "../ProductionProject2/stringprocessor.h"
in das Testprojekt ein. Damit muss ich auch die zugehörige Objektdatei im Qt Creator über
OBJECTS += ../ProductionProject2/debug/stringprocessor.o
einbinden.
Zur Vollständigkeit noch der Testcode:
// setup test
QString str = "Test";
StringProcessor* sut = new StringProcessor();

// execute sut
QString result = sut->trimString(str);

// verify result
QVERIFY(text == "");
Das hat zur Folge, dass die Objektdateien des Produktivprojekts jedes mal gelöscht werden, wenn ich ein Rebuild (Clean) des Testprojektes mache. Ich finde es nicht so falsch, das getestete Projekt öfter zu bauen, aber Andere könnten sich daran stören.
Hat jemand einen Vorschlag, wie man die Objektdateien des Produktivprojektes in das Testprojekt einbindet, ohne dass die Objektdateien ständig gelöscht werden?
Ich habe übrigens schon eine leichte Ahnung, dass ich mich für eine etwas dumme Frage entschuldigen muss...