Unittests mit Qt
Verfasst: 14. Mai 2009 19:04
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
Zur Vollständigkeit noch der Testcode:
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...
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
in das Testprojekt ein. Damit muss ich auch die zugehörige Objektdatei im Qt Creator über#include "../ProductionProject2/stringprocessor.h"
einbinden.OBJECTS += ../ProductionProject2/debug/stringprocessor.o
Zur Vollständigkeit noch der Testcode:
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.// setup test
QString str = "Test";
StringProcessor* sut = new StringProcessor();
// execute sut
QString result = sut->trimString(str);
// verify result
QVERIFY(text == "");
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...