Software testen
-
Wie testet ihr die Software, die ihr schreibt? Geht ihr da richtig professionell ran? Ich muss sagen, dass wenn ich entwickle gleichzeitig teste, ob das so funktioniert, wie es soll. Soll heißen:
- Ich entwickle nie Code den ich nicht mindestens 1x ausgeführt habe. Daraus folgend checke ich auch in der Versionsverwaltung nichts ein, was nicht ausgeführt wurde
- Ich schau mir an, wie sich der Code im Ganzen verhält. D.h. ich gehe davon aus, dass durch meine Änderung woanders evtl. ein Fehler auftritt
- Bei C/C++-Programmen kompiliere ich ALLES neu um zu sehen, ob es bei der Übersetzung jetzt Probleme gibt
- Dann mache ich eigentlich nur noch Grenzwerttests. Wenn z.B. Daten in einen Speicher geschrieben werden sollen mach ich mir Testdaten und schau mir die Randbereiche an und prüfe so, ob alles da liegt, wo es liegen soll.
Na ja, halt testen im kleinen. Meist schreibe ich mir kleine Testfälle um das zu automatisieren.
Wie geht ihr da ran? Was sollte man unbedingt tun?
-
Ich teste üblicherweise durch gepflegtes F5 Drücken. Wenn dann der Compiler nicht explodiert, wird die Software ausgeliefert.
-
Kommt auf das Programm an: Bei kleinen Programmen kann man
die Eingaben machen und prüfen ob das Programm das macht was es soll.
Bei Programmen wie Windoof hilft das allerdings nicht0x0ERROR
-
Ich teste hauptsächlich manuell. Automatisierte Unit-Tests helfen mir bei der Art SW die ich beruflich schreibe einfach nicht.
Vorm Ausliefern teste ich die Software noch auf anderen Windows-Versionen, auf WinXP raucht grundsätzlich alles ab, lässt sich aber i.d.R. schnell fixen
-
Bei uns laufen unittests (jeder separat, bevor er seine Änderungen auf den Server pusht und dann noch einmal vor dem eigentlichen Release).
Dann laufen noch regelmäßig automatisierte Tests (zum Teil auch stumpfe sanity checks), die die kritischen Bestandteile nochmal laufend überprüfen. Damit notfalls die relevanten Leute aus dem Bett geklingelt werden können
-
zwutz schrieb:
Bei uns laufen unittests (jeder separat, bevor er seine Änderungen auf den Server pusht und dann noch einmal vor dem eigentlichen Release).
Dann laufen noch regelmäßig automatisierte Tests (zum Teil auch stumpfe sanity checks), die die kritischen Bestandteile nochmal laufend überprüfen. Damit notfalls die relevanten Leute aus dem Bett geklingelt werden können
Das geschilderte ist notwendig und gut. Mehr ist ein aufwendiges Spezialthema. Gut beschrieben im Buch ´Der Systemtest´ hier in der Rubrik ´Bücher` rezensiert.