In der Major Version 2017 des TFS waren eine Vielzahl neuer Features und wesentliche Prozess-Änderungen für den Bereich Testing enthalten. Im Gegensatz dazu konzentriert sich TFS 2018 eher auf kleinere Optimierungen und Neuerungen für bestehende Features. Diese möchten wir Ihnen nicht vorenthalten und laden Sie daher ein, in diesem Beitrag unserer Blogserie „Neu in TFS 2018“, diese kleinen aber feinen Neuerungen näher kennenzulernen. Zudem enthält TFS 2018 eine doch etwas größere Veränderung, die wir Ihnen gleich zu Beginn erläutern wollen.
Umbruch für Lab Management und Ausführung von automatisierten Tests
Zusätzlich zu den sonst eher kleineren Neuerungen für den Bereich Testing gibt es doch eine wesentliche Änderung mit TFS 2018. Diese stellt einen Breaking Change für die Verwaltung von Laborumgebungen und die Ausführung von automatisierten Tests dar.
Mit dem im Microsoft Test Manager (MTM) enthaltenen Lab Management können Testumgebungen aufgesetzt und verwaltet werden. Damit ist es möglich auch komplexe Szenarien, wie z.B. eine mehrstufige Anwendung mit verschiedenen Rollen (Desktopclient, Webserver, Datenbankserver, …) oder auch die Integration von SCVMM, abzubilden.
Mit bisherigen TFS-Versionen gab es weiterhin die Möglichkeit, Test Controller am TFS zu registrieren und mit deren Hilfe automatisierte Tests in den Testumgebungen des Lab Management auszuführen. Dies konnte manuell aus MTM oder auch aus einem XAML-Build heraus initiiert werden. Diese Integration von TFS und Lab Management bzw. automatisiertem Testen im MTM wird in TFS 2018 nicht länger unterstützt. Es können also keine neuen Test Controller am TFS angemeldet werden und auch bestehende Test Controller können zusammen mit TFS 2018 nicht mehr verwendet werden. Diese Änderung ist sehr eng verknüpft mit der Abkündigung des XAML-Buildsystems. In Konsequenz entfällt damit auch die Ausführung von automatisierten Tests über den vorher beschriebenen Weg.
Lassen Sie sich von diesem Umstand aber bitte nicht davon abschrecken auf TFS 2018 zu migrieren. Zwar entfällt der gewohnte Weg, jedoch bietet TFS 2018 alternative Wege, die bekannten Ziele weiterhin zu erreichen. So kann beispielsweise die Integration von TFS und SCVMM mit der SCVMM Integration-Extension erreicht werden und auch die Ausführung von automatisierten Tests während eines Builds ist natürlich weiterhin gegeben.
Die kleinen Helfer für Test Management und Ausführung
Wie Sie bereits im Beitrag Neu in TFS 2018: Neues für Work Item Tracking lesen konnten, erhält die Testfallverwaltung gemeinsam mit den Ansichten des Work Item Trackings (Backlogs etc.) einen neuen Anstrich in Bezug auf die Filterung. Somit ist es nun nicht nur wie bisher möglich nach Testfeldern wie z.B. dem Ergebnis zu filtern, sondern darüber hinaus auch nach allgemeinen Work Item Feldern wie beispielsweise dem Titel und dem Status (vgl. Abb. 1). Damit können Test Cases nun noch einfacher und schneller gefunden werden.
Abbildung 1: Filterung von Test Cases
Auch die weiteren Neuerungen stehen ganz im Zeichen der erhöhten Übersichtlichkeit und Nachverfolgbarkeit. So ist es nun möglich im Nachgang an die Testausführung Informationen in Kommentaren von Test Runs und Test Results mit Hilfe von Markdown besser aufzubereiten. Einstiegspunkt hierfür ist zum einen die Option Update comment für ganze Test Runs und zum anderen die Option Update analysis für einzelne Test Results (vgl Abb. 2).
Abbildung 2: Verwendung von Markdown im Kommentar eines Test Results
Darüber hinaus war es bisher nur im MTM möglich Dateien, wie z.B. Screenshots, als Anhänge zu Test Runs und Test Results hochzuladen. Diese Option steht nun auch im Web zur Verfügung (vgl. Abb. 3). Damit beseitigt Microsoft eine weitere Hürde im Bereich Testing für den vollständigen Umstieg vom MTM auf den TFS Web Access.
Abbildung 3: Anhängen einer Datei an einen Test Run
Eine weitere Hilfe ist die neue Möglichkeit fehlgeschlagene Tests mit einem bereits existierenden Bug zu verknüpfen. Somit kann nun auch die Verbindung von fehlgeschlagenen Tests zu bereits bekanntem und dokumentiertem Fehlverhalten hergestellt werden (vgl. Abb. 4).
Abbildung 4: Verlinkung von fehlgeschlagenen Tests mit existierenden Bug
Verbessertes Test Reporting durch Widgets
TFS 2018 setzt einen besonderen Fokus auf den Ausbau des Build- und Releasemanagements. Dieser Ausbau spiegelt sich auch im Testbereich wieder. Das in TFS 2017 eingeführte Test Results Trend-Widget, welches bisher nur den Verlauf der Testergebnisse ausgeführter Builds einer bestimmten Builddefinition visualisieren konnte, wird mit TFS 2018 um die Möglichkeit erweitert, auch Testergebnisse innerhalb von Releases darzustellen. Damit kann der jeweils aktuelle Teststatus von Umgebungen einer bestimmten Releasedefinition auf einen Blick angezeigt werden (vgl. Abb. 4).
Abbildung 4: Test Results Trend-Widget für Releasedefinition und –umgebung
Hinzu kommt außerdem das neue Widget Chart for Test Plans. Dieses ermöglicht, ähnlich wie beim Erstellen von Test Case oder Test Result Charts im Test-Hub, die Abbildung des aktuellen Testdesign- oder des Testausführungsstatus von Test Plänen und Suiten (vgl. Abb. 5). Im Vergleich zu den bekannten Charts, birgt das neue Widget den Vorteil, dass größere Datenmengen besser dargestellt werden können.
Abbildung 5: Chart for Test Plans-Widget
Fazit
TFS 2018 bringt keine weltbewegenden Neuerungen für das Testing mit sich. Nichtsdestotrotz bringen die kleinen aber feinen Erweiterungen für bereits existierende Features Vereinfachungen für den Projektalltag mit sich. Den Ausreißer bildet jedoch die Abkündigung der Integration von TFS und Lab Management Umgebungen im MTM. Dies stellt zwar ein Breaking Change dar, gibt damit aber auch den Anstoß, alte Pfade zu verlassen und die Vorzüge des neuen Build- und Releasemanagement-Systems auch für den Bereich Testing zu nutzen.