Dienstag, 5. Mai 2015

Testing, Checking oder einfach nur testen?

Der Testexperte Gojko Adzic (Link zu seinem Blog) hat in einem seiner Artikel eine interessante These aufgenommen. Die besagt, dass das Testen eigentlich aus zwei unterschiedlichen Disziplinen oder Arten besteht:
  1. Das Überprüfen erwarteter Ergebnisse. In Testfällen wird beschrieben, wie sich eine Anwendung verhalten soll. Dies wird dann überprüft. Diese Disziplin wird als checking bezeichnet. Gängige Tests sind dafür Unit-Tests, Tests von Datenformaten, Datenmigrationen, Schnittstellen etc.
  2. Die Analyse der Anwendung auf das Verhalten bei Nutzung. Damit wird getestet, ob sich eine Anwendung unerwartet verhält. Ob Undefiniertes und Unbekanntes auftritt. Diese Disziplin wird als testing bezeichnet. Darunter fällt z. B. usability testing und exploratives Testen.
Eine spannende Unterscheidung. Denn die Tests, die unter checking fallen, bieten sich auch stark für Automatisierung an und sind in der Regel vom Entwickler (z. B. im Pairprogramming) umzusetzen. Das testing wird dann von erfahrenen Testern manuell durchgeführt.