Im Rahmen von Lab Management wird die Ausführung von automatisierten Tests über Testpläne und Testsuiten im MTM gesteuert. Ein Lab Management könnte beispielweise die Tests aus der BVT Testsuite aus dem folgenden Beispiel-Screenshot ausführen.
Damit eine Steuerung und Remote-Ausführung eines automatisierten Tests über den MTM überhaupt möglich ist, muss dieser zuvor mit einem Test Case Work Item verknüpft werden.
Im aktuellen Beitrag lernen Sie zwei Möglichkeiten kennen mit denen Sie automatisierte Tests (UI Tests / Unit Tests) mit Test Case Work Items verknüpfen können.
Der erste Weg zur Verknüpfung eines automatisierten Tests mit einem Test Case Work Item wird direkt über das Visual Studio 2010 realisiert.
Über den Test View Dialog im VS 2010 kann mit Hilfe der Kontextmenü Einträge “Create Test Case from Test” bzw. “Associate Test to Test Case”, entweder ein Test Case Work Item mit einer Verknüpfung zu einem Test neu angelegt bzw. eine Verknüpfung zu einem Test Case Work Item hergestellt werden. Der zuletzt beschriebene Fall kommt beispielsweise bei der Automatisierung von manuellen Tests zum Einsatz. Nach der Auswahl der Aktion muss der Entwickler das Work Item nur noch speichern. Einen kurzen Überblick über den Prozess auf Entwicklerseite zeigt nachfolgender Screenshot:
Den finalen Schritt im Workflow führen die Tester durch, indem sie die erstellten Test Cases mit Testpläne und Testsuiten verknüpfen. Das zuvor besprochene Verfahren skaliert bei einzelnen Tests, gerät aber bei umfangreichen Testprojekten an seine Grenzen.
An dieser Stelle kann das zweite Verfahren seine Stärken ausspielen, indem wir einen Massenimport bzw. – Aktualisierung über das Kommandozeilenwerkzeug tcm durchführen.
Als erster Schritt ist zunächst die zugehörige Testsuite ID über den Befehl “tcm suites /list /collection:<collectionurl> /teamproject:<teamprojectname>” zu ermitteln. Ein Beispiel für die Ausführung dieses Befehls zeigt nachfolgender Screenshot:
Nachdem die ID der Testsuite ermittelt wurde, wird über den Befehl
“tcm testcase /import / storage:<testprojekt assembly> /syncsuite:<testsuite id> /testcategory:<testcategory> /collection:<collectionurl> /teamproject:<teamprojectname>” der Importvorgang gestartet. Besonders hervorzuheben ist der Parameter TestCategory. Automatisierte Tests sollten im VS 2010 über die Annotationen [TestCategory(…)] und [TestPriority(..)] klassifiziert werden. Die Einordnung von Tests über Testlisten wird in der Zukunft wahrscheinlich nicht mehr unterstützt werden. Durch Verwendung der TestCategory werden nur für ausgewählte Tests Work Items angelegt, obwohl mehre hundert Tests in einer Assembly gespeichert sein könnten. Ein Beispiel für einen Import zeigt der nachfolgende Screenshot:
Das Ergebnis dieses Bulk-Import Prozesses für automatisierte Tests können Sie anschließend sofort im MTM sehen (siehe nächster Screenshot).
Sollten nach einem initialen Import auf Seiten der Entwickler das Testprojekt angepasst oder erweitert wurden sein, dann haben Sie mit dem gleichen Befehl auch die Möglichkeit ein Aktualisierung (Bulk-Update) durchzuführen. Ein Beispiel für eine Massenaktualisierung zeigt der nächste Screenshot:
Fazit:
Im aktuellen Beitrag haben Sie verschiedene Wege zum Verknüpfen von automatisierten Tests mit Testfällen kennengelernt. In Abhängigkeit von der Anzahl an Tests haben Sie die Wahl über den manuellen Visual Studio Weg oder als Alternative das Kommandozeilenwerkzeug TCM. Das Kommandozeilenwerkzeug kann gerade bei einer großen Anzahl an Tests eine Menge Arbeit beim Management mit den MTM und VS 2010 sparen.
Links und weiterführende Informationen: