Wie bringe ich mein Programm zum Absturz?
-
Hallo,
z.Z arbeite ich in meiner Abteilung an einem Testing zu einem Tool,welches bald auf dem
Markt kommen soll. Naja ich muss halt nach einem Testkonzept vorgehen und Sachen eingeben, anklicken
etc. Nun meine Frage: Wie schaffe ich es, dass es eventuell Fehler in der Software gibt,die ich herausfinde?
-
Falsche/Unrealistische Werte eingeben, viele Dinge gleichzeitig, bzw. auf einmal machen. Da gibt es viele Möglichkeiten. Oder einem unerfahrenen User in die Hand geben, dann siehst du gleich ob's funktioniert oder nicht.
-
streu halt fehler ein.
irgendwo einif(rand()==0) (int*)0=0;
woanders läßte ein delete weg.
noch greifste auf einen speicher zu, der eine zeile vorher deleted wurde.
und vertausch irgendwo man true und false.
mach mal irgendwo ein if(...); statt if(...).
und sehr beliebt, ist \ statt \\ in festen dateinamen mit pfad.
wie man fehler macht, müßtest du eigentlich wissen.
-
XFlorian schrieb:
Naja ich muss halt nach einem Testkonzept vorgehen und Sachen eingeben, anklicken...
ich glaube nicht, das er direkt am Code werkelt... sonder eher das fertige Programm testet...
Wenn ich recht liege, hätte ich folgendes:
- die Grenzwerte bei den Eingaben austesten, sowie überschreiten, wenn möglich... (max. anzahl Zeichen, sonderzeichen, etc)
- schnelle, häufige eingabe/ klicken von Buttons...
- wenn man das Programm mehrfach öffnen kann, so oft wie möglich öffnen...
- wenn man dokumente reinladen kann (mittels multi-select) soviel wie möglich laden
- einfach mal den Prozess abschiessen und schauen was passiert, wenn man das programm wieder öffnen will...
- wenn es Registry-einträge gibt, diese korrupieren...
- usw, usw, uswansonsten müsstest du mal genauer definieren, um was für ein Programm es sich handelt... dann fallen mir vielleicht noch genauere Testmethoden ein.
ndT Lupo
Misstrauen kommt nie zu früh, aber oft zu spät.
^Johann Gottfried Seume^
-
Naja ich muss halt nach einem Testkonzept vorgehen und Sachen eingeben, anklicken etc.
woanders läßte ein delete weg.
noch greifste auf einen speicher zu, der eine zeile vorher deleted wurde.
und vertausch irgendwo man true und false.
mach mal irgendwo ein if(...); statt if(...).
und sehr beliebt, ist \ statt \\ in festen dateinamen mit pfad.Er will Fehler beheben, oder feststellen wo welche sind und nicht neue machen!
-
http://sourceforge.net/projects/staf/
edit: habe nicht darauf geachtet, ob man es auch in einem kommerziellen projekt nutzen darf.
mfg
-
naja_? schrieb:
Er will Fehler beheben, oder feststellen wo welche sind und nicht neue machen!
nein.
der satz "Wie schaffe ich es, dass es eventuell Fehler in der Software gibt,die ich herausfinde?" ist eindeutig. er fragt, wie er es schafft, daß es fehler gibt.
-
Hi
Das Programm nicht nach Bedinungsanleitung verwenden und die Punkte a bis z in beliegiber anderer reihenfolge abarbeiten. wenn das möglich ist und logisch richtig. Wir sind grade dabei eine Software vertigzustellen die einen recht komplexen Dialog mit 8 Tabs besitzt. erst etwas auf Tab 1 dann auf Tab 3 und dann zurück auf Tab 2.
Logische abhängigkeiten/bedingungen kontrollieren. wenn die eingabe 220 und IP angekreutzt dann ....
Schreibweise der Texte kontrollieren ggf wenn mehrsraching auch die der übersetzungen. Im gleichen zug auch den gui aufbau prüfen ( sind alle texte sichtbar )
Pfade angeben die nicht existieren,
mutwillig dateien/ verzeichnisse löschen oder mit schreibschutz versehen.
Dateien manipulieren und öffnen
Datenbank manipulieren / einträge löschenFalsche dateien öffnen
Verwendete HW entfernen / ältere Treiber installieren.
Bei Multiuser anwendungen mit zentralem server versuchen gleichzeitig den gleichen datensatz zu bearbeiten.
Grenzwerttests jeglicher art bei eingabefeldern. ( anzahl zeichen. sowie werte ) wenn werte verrechnet werden diese auch absichtlich so versuchen zu setzen das intern überläufe auftreten. ggf ergebnisse kontrolliern.
beim öffnen von dateien kontrollieren ob auch das drinn steht was vorher gespeichert wurde.
gruss Termite
ps viele fehler sind sowieso logik fehler oder Fehler in der GUIi.
pps. Das beste ist immer noch den Endanwender vor das Prog zu setzen und testen zu lassen. Die finden viel schneller fehler als einem lieb ist.