Ich liebe es, Unit-Tests zu schreiben und bin mir einig, dass sie eine hervorragende Möglichkeit sind, Code zu testen, Regressionen zu verhindern usw. Ich bin jedoch nicht in der Lage, sie zu schreiben, da der überwiegende Teil des Codes, an dem ich Tag für Tag arbeite, Anwendung ist Code, der dem Benutzer eine Benutzeroberfläche anzeigt. Gibt es eine gute Möglichkeit, Anwendungscode für Unit-Tests zu testen? Was sind hier die Best Practices?
Ich suche keine spezifische Antwort wie ein Framework usw. Aber wie gehen Sie generell mit diesem Problem um?
unit-testing
applications
Justin Ethier
quelle
quelle
Antworten:
Zum Testen der tatsächlichen Benutzeroberfläche funktioniert Selenium gut.
Wenn Sie tatsächliche Komponententests wünschen, besteht Ihre Strategie darin, so viel Logik wie möglich von der tatsächlichen Benutzeroberfläche zurückzuschieben, normalerweise in einem ViewModel-Objekt. Sie können dann Komponententests für das ViewModel-Objekt schreiben.
Mit anderen Worten, fügen Sie so wenig Logik wie möglich in die eigentliche Benutzeroberfläche ein, damit der Komponententest an anderer Stelle stattfinden kann.
quelle
Ich hatte Erfolg beim Unit-Test meiner Anwendung mit MSTest und beim Testen meines Javascript mit QUnit und beim Aufnehmen der Ergebnisse dieser Tests mit einem einzigen MSTest-Unit-Test, der WatiN verwendet (mir wurde Selenium vorgeschlagen , das auch Tests aufzeichnen kann, aber fand WatiN besser für eine saubere Automatisierung).
quelle