Komponententest prägnant Grundlagen zum Testen

Dies ist ein Auszug aus dem Unit Testing Succinctly eBook von Marc Clifton, freundlicherweise von Syncfusion zur Verfügung gestellt.

Zunächst wird davon ausgegangen, dass zwei weitere wichtige Elemente eines Softwareentwicklungsprojekts vorhanden sind:

  • Ein Versionskontrollsystem wie CVS, SVN, Git, Mercurial usw.
  • Ein Bug Tracking System wie Bugzilla, FogBugz etc.

Microsoft bietet die Integration dieser Komponenten mit Visual Source Safe, SharePoint und anderen Produkten.

Wenn du nicht hast beide von diesen Stücken bereits vorhanden, hören Sie jetzt auf. Dies sind wesentliche Komponenten eines guten Testprozesses für solide Einheiten.


Du hast also einen Fehler

Wenn Sie einen Fehler entdecken, entweder durch Verwendung der Anwendung oder durch einen fehlgeschlagenen Komponententest:

  • Melden Sie den Fehler im Bug-Tracker und weisen Sie ihn jemandem zu.

Wenn der Fehler nicht von einem Komponententest gemeldet wird, sondern mithilfe des Codes (entweder eines anderen Entwicklers oder eines Benutzers) entdeckt wurde:

  • Schreiben Sie den Komponententest, der überprüft, wie das Problem erstellt wird (siehe „Negative Tests“)..

Mit Ihrem Quellcodeverwaltungssystem:

  • Erstellen Sie einen Zweig speziell für diesen Bugfix.

Dann:

  • Schreiben Sie den Komponententest, der beschreibt, wie sich die Methode korrekt verhalten soll.
  • Beheben Sie den Fehler und wiederholen Sie den Test.

Mit Ihrem Quellcodeverwaltungssystem:

  • Überprüfen Sie die Änderungen anhand der vom Bug-Tracker zugewiesenen Fehlernummer.
  • Wenn Sie neue Komponententests hinzugefügt haben, checken Sie diese ein und beziehen Sie sich erneut auf die Fehlernummer.
  • Wenn Sie den Code verzweigt haben, entscheiden Sie, wann Sie die Änderungen im Hauptzweig zusammenführen möchten.

Tracking und Berichterstellung

Durch die Arbeit mit einem Bug-Tracking- und Versionskontrollsystem kann jeder (vom Manager bis zum Junior-Programmierer) problemlos Folgendes überprüfen:

  • Die an der Codebasis vorgenommenen Änderungen.
  • Das Gerät testet das Problem.
  • Das Gerät testet das Problem.

Dies erleichtert dem Entwicklerteam, dem Management und sogar dem Endbenutzer das Leben, wenn Ihr Projekt so eingerichtet ist, dass der Endbenutzer an dieser Detailtiefe interessiert ist. (Wenn beispielsweise Software für eine andere Abteilung inhouse entwickelt wird, könnten andere daran interessiert sein, wann ein Fehler behoben wurde.)

Die Integration mit anderen Technologien wie SharePoint kann die Kommunikation zwischen Teammitgliedern, Managern und anderen Abteilungen erleichtern. Durch die Verwendung ausgefeilter Tools zur Quellcodeverwaltung wie Perforce und Continuous Integration Tools wie CruiseControl.NET wird die Verwendung der Quellcodeverwaltung mit Unit-Tests, Integrationstests, Reporting-Tools usw. weiter integriert und automatisiert.