Hallo.
Aus gegebenem Anlass (bebu's "scanner"), würde ich vorschlagen im Projektverzeichnis einen Ordner mit dem Namen "testsuite" zu erstellen, und dort alle Dateien hineinzulegen, die eigentlich zum Testen gedacht sind. Das ist zurzeit nur bebu's "scanner" modul, es wird hoffentlich noch etwas dazukommen.
Das hat den Vorteil, dass man die Tests von dem Programm trennen kann, und es eventuell in ein "test" Target auslagern kann ("make test").
Außerdem kann man noch ganz lustige sachen mit CMake/CTest machen. Hab da schon ein paar Gedanken, aber alles zu seiner Zeit.
Ich kann schon alles einrichten, brauch nur das "OK" vom Projektleiter.
Test-System
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Test-System
Haters gonna hate, potatoes gonna potate.
Re: Test-System
Ich bin zwar nicht der Projektleiter aber trotzdem dafür. Nur der Name "testsuite" gefällt mir irgendwie nicht so ganz. Warum nicht einfach "test"? Daran hab ich mich inzwischen schon gewöhnt 
Testen ist bis jetzt eigentlich überhaupt nur sehr mager vorhanden. Ich weiß das das nicht immer einfach ist, aber man sollte da konsequent sein.

Testen ist bis jetzt eigentlich überhaupt nur sehr mager vorhanden. Ich weiß das das nicht immer einfach ist, aber man sollte da konsequent sein.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Test-System
Vollstes einverständnis.Kerli hat geschrieben:Testen ist bis jetzt eigentlich überhaupt nur sehr mager vorhanden. Ich weiß das das nicht immer einfach ist, aber man sollte da konsequent sein.
Daran habe ich zuerst auch gedacht. Aber ich hatte da so eine Idee ein kleines "Test-framework" aufzubauen, mit allen Modulunabhängigen Dateien in "test", und allen Modulabhängigen Dateien nach "testsuite". Ist nur ne Idee, man kann auch beides nach test/ hauen.Kerli hat geschrieben:Ich bin zwar nicht der Projektleiter aber trotzdem dafür. Nur der Name "testsuite" gefällt mir irgendwie nicht so ganz. Warum nicht einfach "test"? Daran hab ich mich inzwischen schon gewöhnt
Haters gonna hate, potatoes gonna potate.
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Test-System
Ich bin ebenfalls für test.fat-lobyte hat geschrieben:Aus gegebenem Anlass (bebu's "scanner"), würde ich vorschlagen im Projektverzeichnis einen Ordner mit dem Namen "testsuite" zu erstellen
In dem Fall wäre das quasi ein Verzeichnisbaum mit einigen Dateien, richtig?fat-lobyte hat geschrieben:und dort alle Dateien hineinzulegen, die eigentlich zum Testen gedacht sind. Das ist zurzeit nur bebu's "scanner" modul, es wird hoffentlich noch etwas dazukommen.
Ich kenne bisher nur CPPUnit, bzw. meine eigenen Testfunktionen. CTest kenne ich noch nicht, aber ich bin interessiert mir das anzusehen.fat-lobyte hat geschrieben:Das hat den Vorteil, dass man die Tests von dem Programm trennen kann, und es eventuell in ein "test" Target auslagern kann ("make test").
Außerdem kann man noch ganz lustige sachen mit CMake/CTest machen. Hab da schon ein paar Gedanken, aber alles zu seiner Zeit.
Von daher hast Du von meiner Seite erstmal das Okay. Tests sind schließlich nie verkehrt

Wir sollten ein einfaches Tutorial zum Testen erstellen, damit er überhaupt sinnvoll selbst Testen kann, bzw. wenigstens ein paar Beispieltests erstellen. Das Tutorial ist sicherlich sinnvoll, aber halt auch alles eine Frage der Zeit.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Test-System
So soll es sein.Xin hat geschrieben:Ich bin ebenfalls für test.
Klar. Sowohl CMake, als auch ich sind flexibelXin hat geschrieben:In dem Fall wäre das quasi ein Verzeichnisbaum mit einigen Dateien, richtig?

Anfangs werde ich CTest noch nicht verwenden. So weit ich weiß braucht man für CTest sowieso eigenständige Executables, mit main()-Funktion, die 0 bei Erfolg und etwas anderes bei Fehlschlag zurückgibt. Das ist also ziemlich generisch und nicht CTest spezifisch, da kann man auch was anderes dazuhacken wenns sein muss.fat-lobyte hat geschrieben:Ich kenne bisher nur CPPUnit, bzw. meine eigenen Testfunktionen. CTest kenne ich noch nicht, aber ich bin interessiert mir das anzusehen.
Wird implementiert. Heute abend oder morgen.fat-lobyte hat geschrieben:Von daher hast Du von meiner Seite erstmal das Okay. Tests sind schließlich nie verkehrt
Haters gonna hate, potatoes gonna potate.
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Test-System
Dann werde ich mich hoffentlich morgen abend um ein CPPUnit-Tutorial kümmern.fat-lobyte hat geschrieben:Anfangs werde ich CTest noch nicht verwenden. So weit ich weiß braucht man für CTest sowieso eigenständige Executables, mit main()-Funktion, die 0 bei Erfolg und etwas anderes bei Fehlschlag zurückgibt. Das ist also ziemlich generisch und nicht CTest spezifisch, da kann man auch was anderes dazuhacken wenns sein muss.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- Bebu
- Beiträge: 562
- Registriert: Mi Okt 21, 2009 6:19 pm
- Wohnort: In der Nähe von Salzburg - Bin aber kein Österreicher!
Re: Test-System
Ich habe euch heute eine kleine Tecdemo in den branch boostTestDemo hochgeladen. Es ist ein vollständig von Dedupe unabhängiges CMake Projekt und soll die Funktionsweise von Boost.Test demonstrieren. Einzige Abhängigkeit ist die Testlibary von Boost und sollte auch mit Version 1.44 funktionieren. Bitte seht es euch mal an und sagt mir, ob es euch gefällt. Wenn ja, dann werfe ich cppunit nämlich raus und ersetzte es mit Boost.Test.
Ich bin bis jetzt der Meinung, das Boost.Test wesentlich intuitiver ist, als cppunit und daher gefällt es mir besser. Aber mal sehen, was unser Projektleiter und andere so davon halten
Ich bin bis jetzt der Meinung, das Boost.Test wesentlich intuitiver ist, als cppunit und daher gefällt es mir besser. Aber mal sehen, was unser Projektleiter und andere so davon halten

Wer immer nach dem Unerreichbaren jagt, der wird irgendwann auf die Schnauze fallen!
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Test-System
Ohne es bisher gesehen zu haben: Mach es.
CPPUnit läuft unter MacOS und Linux problemlos, aber das offizielle Windows-Paket ist ab Visual Studio 2005 nicht mehr kompilierfähig. Die Änderungen sind überschaubar, aber nur bedingt zumutbar. Ein Test-System, dass nicht kompilierbar ist, kann so nicht empfohlen werden und ich sehe keinen Grund den CPPUnit-Support, damit wir es in Dedupe verwenden können.
CPPUnit läuft unter MacOS und Linux problemlos, aber das offizielle Windows-Paket ist ab Visual Studio 2005 nicht mehr kompilierfähig. Die Änderungen sind überschaubar, aber nur bedingt zumutbar. Ein Test-System, dass nicht kompilierbar ist, kann so nicht empfohlen werden und ich sehe keinen Grund den CPPUnit-Support, damit wir es in Dedupe verwenden können.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.