Ich führe eine ~ 300K LOC C# Legacy-Thick-Client-Anwendung mit einer Windows.Forms-Schnittstelle. Die App ist voller kleiner Fehler und Macken. Zum Beispiel habe ich kürzlich einen Fehler entdeckt, bei dem Benutzer, wenn sie Zellen in einem DataViewGrid bearbeiten und Tabulatoren (nicht klicken) und eine bestimmte Zelle ausgewählt lassen, die Ausnahme "Objektreferenz nicht auf Instanz eines Objekts setzen" erhält . Ich entdecke (oder erhalte einen Fehlerbericht) über so etwas Neues über jede Woche oder zwei. Ich hatte genug und dachte darüber nach, eine Art Fuzz-Test auf der Anwendung zu versuchen, um unentdeckte Probleme herauszufinden.Gibt es gute Tools oder Tipps zum Testen von Windows Forms-Anwendungen?
Wenn ich meine Fuzz-Tests selbst mache, würde ich davon ausgehen, dass ich zumindest in der Lage sein muss, Testsätze zu generieren, die Teile meiner App (Hauptfenster, FormX, FormY, FormZ, ...) unabhängig voneinander ausführen und versuche, Ereignisse in sie zu injizieren.
Ich habe versucht, nach geeigneten Tools dafür zu suchen, aber bis jetzt haben sich für Win Forms nichts einfallen lassen. (Es scheint jedoch keinen Mangel an Fuzz-Test-Tools für Web-Apps zu geben).
Irgendwelche hilfreiche Ideen?
Das klingt nach einem guten Start. Ich fand diesen MSDN-Artikel, der eine Menge guter Informationen zu diesem Ansatz zu haben scheint: http://msdn.microsoft.com/en-us/magazine/cc163738.aspx –
Ich denke, ich werde stattdessen mit diesem Ansatz gehen von einem der obskuren Fuzz-Test-Tools, die ich in meiner Suche gefunden habe. Wenn ich meinen eigenen Ansatz durch die Simulation solcher Ereignisse durchführe, könnte ich dies in mein bestehendes NUnit-Testframework integrieren. –