SlideShare uma empresa Scribd logo
1 de 5
Baixar para ler offline
advertorial                                                                                  der autor




      Nico Orschel
(E-Mail: nico.orschel@aitgmbh.de)
ISTQB zertifizierter Software-Tester und Berater des AIT TeamSystemPro
Teams. Hat sich u. a. anderem auf das automatische Testen mit dem Visual
Studio Lab Management spezialisiert. Berät Unternehmen bei der Einführung
und Anpassung des Visual Studio Team Foundation Server. Seine Erfahrungen
vermittelt er zudem als Autor des TFS-Blogs, in Magazinen und in Vorträgen.




Kürzere Testvorbereitungsphasen
durch integrierte Testlabore
Die aktuellen Release-Zyklen von Software-Projekten haben sich in den letzten Jahren eher verkürzt, u. a. weil agile
Vorgehensmodelle sich in dieser Zeit rapide verbreitet haben und damit einhergehend Entwicklungs- und Testzyklen kürzer
wurden. Dies stellt alle Projektbeteiligte vor neue Herausforderungen, wie z. B. viele Zwischen-Softwareversionen in
Testumgebungen effizient bereitzustellen sowie die Sicherstellung der Lauffähigkeit von bereits implementierten
Funktionalitäten durch automatisierte Tests. Im Vorjahresartikel (siehe [1]) konnte bereits der Austausch von Informationen
zwischen Tester und Entwickler durch den Einsatz vom Team Foundation Server (kurz TFS) und dem Microsoft Testmanager
(kurz MTM) optimiert werden. Der Fokus lag hierbei primär darauf, die Bereiche Testmanagement und Bugtracking über die
gemeinsame Entwicklungsplattform Team Foundation Server zu integrieren und Bug-Reports, mit automatisch im Hintergrund
erfassten Diagnoseinformationen, für eine bessere Reproduzierbarkeit zu erstellen. Ein unscheinbarer Bereich mit massivem
Einsparpotenzial ist nach unserer Erfahrung der Betrieb und das Management von Testumgebungen. In der Testvorbereitungs-
phase schlummert zusätzlich noch eine Menge ungenutztes Potenzial bei der automatischen Bereitstellung der Testobjekte in
die Testumgebungen. In diesem Artikel zeigen wir Ihnen Wege, wie Sie diese Herausforderungen effizient und effektiv mit dem
Visual Studio 2010 Lab Management meistern können.



Einfache Bereitstellung von                           schon zu spät ist. An diesem Punkt kann    Funktionalität kann die Testabteilung vir-
Testumgebungen                                        das TFS 2010 Lab Management sowohl         tuelle und physische Testumgebungen ein-
Bei vielen unserer Kunden beginnen die                den Tester als auch den IT-Administrator   facher verwalten. Bei virtuellen Umgebugen
Testvorbereitungen mit der Bereitstellung             entlasten. Mit der TFS-Lab-Management-     bedeutet dies, dass man in Eigenregie ein-
von Testumgebungen durch eine dedizierte
interne IT-Abteilung, die für die Bereit -
stellung und den Betrieb zuständig ist. Eine
solche „einfache“ Bereitstellung von
Testumgebungen kann aufgrund von eta-
blierten IT-Betriebs- und Bereitstellungs -
prozessen gerade bei mittleren bis großen
Unternehmen mitunter mehrere Wochen in
Anspruch nehmen. Die Bearbeitungsdauer
steht damit in direktem Widerspruch zu
den Testzyklen bei agilen Entwicklungs -
prozessen. Für agile Teams ist eine poten-
zielle Dauer von drei bis vier Sprints
schlichtweg untragbar. Unterstellt man
dann noch die für einen agilen Prozess typi-
schen sich verändernden Rahmenbedingun-
gen und Anforderungen, dann bekommt
ein Team die Testumgebung immer dann
zur Verfügung gestellt, wenn es eigentlich            Abb. 1: TFS 2010 Lab Management Infrastruktur


  1                                                                                                              www.objektspektrum.de
Online-Themenspecial Testing 2011                                                                               advertorial



                                                                                             Microsoft Virtualisierungslösung Hyper-V
                                                                                             (siehe Hyper-V Host in Abbildung 1).
                                                                                                Ein oder mehrere dieser Server werden
                                                                                             über die Managementlösung System Center
                                                                                             Virtual Machine Manager 2008 R2 (kurz
                                                                                             SCVMM) an den TFS angebunden. Alle
                                                                                             Hyper-V-Hosts aus Abbildung 1 werden
                                                                                             zentral über SCVMM Library Shares mit
                                                                                             Software und Vorlagen von virtuellen
                                                                                             Maschinen und vorkonfigurierten Testum-
                                                                                             gebungen versorgt. Der SCVMM ist bereits
                                                                                             ohne zusätzliche Lizenzkosten Teil der Lab-
                                                                                             Management-Lizenz (Lizenzierungsdetails
                                                                                             siehe [3]). Diese wiederum ist Teil der
Abb. 2: Microsoft Testmanager 2010 Lab Center                                                Programmpakete Test Professional (Micro-
                                                                                             soft Testmanager) und Visual Studio 2010
                                                                                             Ultimate.
fach und schnell virtuelle Maschinen erstel-   zur Verfügung stellen. Über Unterschiede         Als Tester sehen Sie von diesen techni-
len, ändern und löschen kann. Im               zwischen beiden Testumgebungstypen            schen Details im Hintergrund nichts, denn
Folgenden werden wir uns auf den Typ der       informiert das Whitepaper unter [2].          Sie verwalten diese Testumgebungen nur
virtuellen Testumgebungen beschränken,            Die technische Basis für den Betrieb von   über ihren MTM in der Lab-Center-
weil nur diese den vollen Leistungsumfang      virtuellen Umgebungen bilden Server mit der   Perspektive (siehe Abbildung 2). Die zwei-




Abb. 3: Anlegen einer Testumgebung im MTM


Online-Themenspecial Testing 2011                                                                                                  2
advertorial



                                                 stellen, so als würden sie mit Legosteinen     einem IT-Administrator diese Frage stellt,
                                                 bauen. Abbildung 3 zeigt diesen sehr einfa-    dann wird man sicherlich die Antwort
                                                 chen Prozess, wie die Tester mit nur vier      erhalten, dass dies technisch nicht möglich
                                                 Schritten Testumgebungen bereitstellen         ist. Man hört in dieser Situation techni-
                                                 können. In der Abbildung wird in Schritt       schen Ausführungen wie u. a., dass Rech-
                                                 1. zunächst der Umgebungstyp „Virtual          nername und IP Adresse im Netzwerk stets
                                                 Environment“ ausgewählt, um die zuvor          eindeutig sein müssen (siehe Abbildung 4).
                                                 beschriebenen Vorlagen als Basis für eine         Genau für diesen Anwendungsfall wurde
                                                 neue Testumgebung auszuwählen. In              beim TFS 2010 Lab Management die
                                                 Schritt 2 hat die Auswahl der Vorlagen         Funktion „Network Isolation“ eingeführt.
                                                 dann stattgefunden. Danach müssen im 3.        Mit Hilfe eines Dienstes – dem sogenann-
                                                 Schritt noch die notwendigen Eigenschaf-       ten Lab Agent – in den virtuellen
                                                 ten der Testumgebung, wie Workflow-,           Maschinen (siehe Abbildung 1 und
                                                 Testing- und Network-Isolation-Unterstüt-      Abbildung 5) können diese voneinander
                                                 zung aktiviert werden. Die Eigenschaften       isoliert betrieben werden, obwohl es sich
                                                 sind notwendig, um Deployment-Skripte          um Klone handelt. Das Duplizieren ist
                                                 auszuführen, sowie für automatische Tests      dank dieser Funktion so einfach wie das
                                                 und das Sammeln von Diagnosedaten. In          Kopieren einer CD.
                                                 Schritt 4 können Sie die Erstellung mit           Ein weiterer positiver Nebeneffekt dieser
Abb. 4: Duplizieren einer Testumgebung
                                                 Finish starten.                                Funktion besteht darin, dass Sie somit der
ohne Network Isolation
                                                    Wichtig bei der Testausführung ist die      Entwicklungsabteilung Duplikate ihrer
                                                 Isolation unterschiedlicher Tester, um         Umgebungen zur Verfügung stellen kön-
te Perspektive des MTM ist das bekannte          gegenseitige Auswirkungen von Tests zu         nen. Im vorherigen Artikel wurde bereits
Test-Center für das Testmanagement und           minimieren. Diese Anforderung macht es         das Konzept der Rich-Bugs, d. h. Bugs mit
die Testausführung (siehe [1]).                  notwendig, Testumgebungen für jeden            zusätzlichen Diagnoseinformationen vorge-
   Jetzt stellt sich hier natürlich die Frage:   beteiligten Tester zur Verfügung zu stellen.   stellt. Trotz dieser vielen Informationen las-
Welche Schritte sind für die Bereitstellung      Unter normalen Umständen bedeutet dies,        sen sich Fehler in Entwicklungsumge-
einer virtuellen Testumgebung mit dem            dass Sie den Prozess aus Abbildung 3 für       bungen nicht immer nachvollziehen und
MTM notwendig? Der Bereitstellungs -             jeden Tester x-mal wiederholen. Der            man benötigt als Entwickler besser die
prozess beginnt damit, dass die interne IT-      Nachteil dieser Vorgehensweise ist gerade      ursprüngliche Testumgebung des Testers.
Abteilung Vorlagen von virtuellen Ma-            bei komplexen Testumgebungen der hohe          Mit der Duplizierungsfunktion kann man
schinen nur einmalig erstellt (siehe Library     Zeitaufwand und die Fehleranfälligkeit bei     als Tester einfach die Umgebung duplizie-
Share in Abbildung 1). In diesen Vorlagen        der Konfiguration und zusätzlichen Instal-     ren und dem Entwickler zur Verfügung stel-
werden dabei Software-Agenten der TFS            lationen. Wäre es nicht schön, wenn Sie        len. Ein Beispiel für dieses Szenario im Falle
Plattform (Build Agent, Test Agent und Lab       den Aufwand der Testumgebungsvor-              eines Fehlers zeigt Abbildung 6. Mehr
Agent) zur Fernsteuerung und weitere             bereitung nur einmal tätigen müssten und       noch, es lässt sich ein Link auf den
Software (in Abhängigkeit vom Testszena-         anschließend einfach für jeden Tester ein      Snapshot der virtuellen Maschine zum
rio) vorinstalliert. Anschließend werden         exaktes Duplikat anzufertigen? Wenn man        Zeitpunkt des Fehlereintritts anhängen und
diese generalisiert (Fachwort: syspreping)                                                      dem Entwickler somit die gesamte „einge-
und dann über den SCVMM Library Share                                                           frorene“ Testumgebung übermitteln.
den MTM-Clients zur Verfügung gestellt,
so dass später auf ihrer Basis nach Bedarf                                                      Kompilieren, Ausliefern und
neue Maschinen erzeugt werden können.                                                           Testen
Nachdem man eine Vorlage in die Libary                                                          Nachdem die Testumgebungen durch den
Share kopiert hat, müssen diese einmalig                                                        MTM und Lab Management bereitgestellt
im Lab Center registriert werden. Bei die-                                                      wurden, bleibt noch der Punkt der
sem       Registrierungsprozess        werden                                                   Bereitstellung von Testobjekten durch die
Standardwerte für Computereinstellungen,                                                        Entwicklung offen. Bei der Bereitstellung
wie z. B. Rechnername, Speicher, Admi -                                                         von Testobjekten folgt das aktuelle Kapitel
nistrator-Konto, Administrator-Passwort                                                         der Methodik „Continous Delivery“.
und Lizenzschlüssel hinterlegt, damit                                                             Continous-Delivery-Prozesse (im Folgen-
Anwender diese Daten nicht bei jedem                                                            den kurz CD genannt) bestehen aus drei
Anlegen von Testumgebungen bei der IT-                                                          Phasen: Übersetzen der Lösung, Ausliefern
Abteilung erfragen bzw. doppelt und drei-                                                       oder Installieren der Lösung in einer
fach eintragen müssen. Ist die Vorlage                                                          Zielumgebung und abschließend die
erfolgreich im Lab-Center registriert, dann                                                     Ausführung von automatisierten Tests. An
können Tester Testumgebungen, bestehend                                                         dieser Stelle fällt sofort die Ähnlichkeit zu
aus einem oder mehreren Rechnern, auf            Abb. 5: Duplizieren einer Testumgebung         dem weitverbreiteten Begriff Continous
Basis dieser Vorlagen einfach zusammen-          mit Network Isolation                          Integration (im Folgenden kurz CI) auf. CI



  3                                                                                                              www.objektspektrum.de
Online-Themenspecial Testing 2011                                                                               advertorial



                                                                                           thematik aus dem vorherigen Abschnitt
                                                                                           zum Begriff Lab Management zusammen-
                                                                                           gefasst wird.
                                                                                              Ein Lab Management Workflow sorgt zu
                                                                                           Beginn für die Übersetzung des jeweiligen
                                                                                           Codes. Technisch gesehen führt der Lab
                                                                                           Management Workflow einfach einen
                                                                                           bereits existierenden Release-Build-Prozess
                                                                                           der Entwicklung aus, so dass man für
                                                                                           Testumgebungen und spätere Releases nur
                                                                                           einen Build-Prozess pflegen muss. Nach der
                                                                                           Kompilierungsphase stellt der Workflow
                                                                                           eine Verbindung zu den Testumgebungen
                                                                                           her und setzt diese im Fall von virtuellen
                                                                                           Testumgebungen auf einen definierten
                                                                                           Stand (Fachwort: Abbild oder Snapshot)
                                                                                           zurück. Nachdem die Verbindung herge-
                                                                                           stellt wurde, wird die Anwendung über
                                                                                           Skripte oder Installationsprogramme in die
                                                                                           Testumgebung ausgerollt. Die Art und
                                                                                           Weise des Rollout-Verfahrens ist abhängig
                                                                                           vom jeweiligen Artefakttyp (Programm,
                                                                                           Website, Datenbankskript, Testdaten).
                                                                                           Nach dem Rollout wird im Fall von vir-
Abb. 6: Wiederherstellung einer Testumgebung im Fehlerfall                                 tuellen Testumgebungen ein weiteres
                                                                                           Abbild der Testumgebung erzeugt. Dieses
besteht aus der Prozesssicht aus zwei        LabDefaultTemplate.xaml realisiert, wel-      spezielle Abbild hat den Vorteil, dass Tester
Hauptphasen: Übersetzen der Lösung und       che bereits alle notwendigen Basisschritte    und Entwickler ihre Umgebungen zu jedem
anschließendes Ausführen von Unit Tests.     zur Verfügung stellt. Microsoft hat mit dem   Zeitpunkt in einen nicht durch Tests beein-
Die Unterschiede liegen dabei zum einen      Workflow einen Release-Prozess entspre-       flussten Zustand zurücksetzen können.
darin, dass CI-Build-Prozesse keine Soft -   chend der Darstellung in Abbildung 7 rea-     Werden Testobjekte in der Testumgebung
ware in Zielumgebungen ausliefern und        lisiert, welcher neben der Infrastruktur -    bereitgestellt, starten anschließend die
zum anderen, dass nur Modul- bzw.                                                          automatischen Tests in der Testumgebung.
Komponententests (Unit Tests) in Isolation                                                 Die hier ausgeführten Tests sind nicht mehr
ausgeführt werden. CI verfolgt im Gegen-                                                   wie bei CI auf die Modul- oder Komponen-
satz zum CD das Ziel, schnell Feedback                                                         tenebene begrenzt, sondern die Anwen-
an die Entwickler zu liefern. CD hin-                                                             dungen können auch direkt ausge-
gegen führt die Tests an                                                                             führt werden. Zum Testen von
Testobjekten in den jeweiligen                                                                         Oberflächen         (wie      z. B.
Zielumgebungen aus. Die Ziel-                                                                            WinForms, WPF, Silverlight,
umgebungen sind dabei an                                                                                  Webanwendungen im IE und
den Produktivumgebungen                                                                                    Firefox) kann man hier das
angelehnt. Desweiteren set-                                                                                neue CodedUI Framework
zen die Tests eine lauffähige                                                                               einsetzen. Die auszuführen-
Software für die Ausfüh-                                                                                    den Tests werden über
rung voraus. Die auszufüh-                                                                                  Testfälle, welche über
renden Tests haben als                                                                                      Testpläne und Testsuiten im
Fokus      die    Testphasen                                                                               TFS 2010 strukturiert sind,
Systemtest oder Akzeptanz-                                                                                ausgewählt (Testfallmanage-
test und sind dadurch szena-                                                                             ment mit MTM siehe [1]).
rio-orientiert – prüfen also                                                                            Wenn ein Fehler auftritt bzw.
potentiell das Software-Produkt                                                                       ein Testfall nicht erfolgreich war,
als Ganzes. Zusammengefasst stellt                                                                 dann kann der Tester die Test-
CD erstmals die Verbindung zwischen                                                              umgebung im Fehlerzustand „einfrie-
Testumgebung und Release-Prozess her.                                                        ren“, so dass der Entwickler neben den
Es ist damit ein „CI plus“.                                                                Testprotokollen auch eine Testumgebung
  Der zuvor beschriebene CD-Prozess ist                                                    zur Fehlerdiagnose zur Verfügung hat.
beim TFS 2010 über eine spezielle Build-                                                      Auf den ersten Blick scheint der beschrie-
Workflow-Vorlage mit dem Namen               Abb. 7: Lab Management Workflow               bene Workflow recht kompliziert zu konfi-



Online-Themenspecial Testing 2011                                                                                                    4
advertorial



gurieren, er lässt sich aber dank der         Zeit zu kopieren. Umfangreiche Konfigu-       zur Verfügung stehen, so dass manueller
Assistenten im Visual Studio 2010 schritt-    rations- und Installationsarbeiten können     Aufwand sowohl auf Seiten der
weise einrichten (technische Details siehe    so eingespart werden und Tester können        Qualitätssicherung- und Entwicklungs-
[2]).                                         sich auf die Testspezifikation und -ausfüh-   abteilung eingespart werden kann. Das TFS
                                              rung konzentrieren. Die Lab-Management-       Lab Management umfasst bereits einen
Fazit                                         Infrastruktur hat zusätzlich noch den posi-   Standard-Workflow, welcher der Methodik
Der Artikel zeigt Ihnen Wege, wie Sie mit-    tiven Nebeneffekt, dass Tester ihre           „Continuous Delivery“ folgt. Konkret
hilfe des TFS 2010 Lab Management die         Testumgebungen mit den Entwicklern „tei-      bedeutet dies, dass er bereits die
Testvorbereitungsphase optimieren kön-        len“ können. Die Entwickler können            „Continuous Delivery“ – Phasen Kompi-
nen. Die Bereitstellung von Testumge-         dadurch      beim    Testen    und    beim    lieren, Ausliefern und Testen unterstützt.
bungen im Baukastenprinzip kann mithilfe      Nachvollziehen von Fehlern auf die glei-      Im Rahmen des Schrittes Testen wird
des MTM durch Tester stark vereinfacht        chen Testumgebungen zugreifen. Durch die      bereits eine erste Eingangsprüfung über
werden. Für die Tester wird dabei kein neu-   enge Verzahnung von Build-Prozessen der       automatisierte Tests durchgeführt, so dass
es Werkzeug benötigt, sondern es wird nur     Entwicklung mit den Testumgebungen            nur Programme mit bestimmten Qualitäts-
eine andere Perspektive des MTM (Lab          können neue Releases schnell, regelmäßig      standards ihren Weg in die manuellen
Center) genutzt. Die interne IT-Abteilung     und automatisiert in den Testumgebungen       Testphasen finden.
kann durch diese neue Arbeitsweise stark
entlastet werden, weil sie nicht mehr jede
Umgebung individuell aufsetzen, sondern
jetzt nur noch Vorlagen für virtuelle
Maschinen sowie die entsprechenden Host-      Referenzen
Systeme zur Verfügung stellen müssen.
Gerade bei agilen Projekten gehören           [1]: Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?:
Wartezeiten von mehreren Sprints dank         http://www.sigs.de/publications/os/2010/Testing/orschel_OS_TESTING_2010.pdf
dieser neuen Möglichkeiten der Vergan-        [2]: Whitepaper Lab Management: http://www.aitgmbh.de/labmngwhitepaper
genheit an. Zusätzlich haben Tester nun die   [3]: Visual Studio 2010 and MSDN Licensing White Paper:
Möglichkeit, wenn einmal eine komplexe        http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=13350
Umgebung aufgesetzt ist, diese einfach        [4]: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment
durch die Duplizierungsfunktion (Network      Automation, Addison-Wesley Longman, ISBN: 0321601912
Isolation) ähnlich wie eine CD in kürzester




  5                                                                                                         www.objektspektrum.de

Mais conteúdo relacionado

Destaque

Higiene icf 20130001
Higiene icf 20130001Higiene icf 20130001
Higiene icf 20130001
Julio Carte
 
Ficha de anlisis 2388
Ficha de anlisis 2388Ficha de anlisis 2388
Ficha de anlisis 2388
Riccy2388
 
Vortrag hagen 2014_a
Vortrag hagen 2014_aVortrag hagen 2014_a
Vortrag hagen 2014_a
bildsymbol123
 
Christmas in germany ppt nikola
Christmas in germany ppt nikolaChristmas in germany ppt nikola
Christmas in germany ppt nikola
Roxie Goulden
 
Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)
Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)
Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)
bildsymbol123
 
Ingrid mösslacher pp
Ingrid mösslacher ppIngrid mösslacher pp
Ingrid mösslacher pp
ahclasses
 

Destaque (20)

Higiene icf 20130001
Higiene icf 20130001Higiene icf 20130001
Higiene icf 20130001
 
Hoe Voorkom ik No Show
Hoe Voorkom ik No ShowHoe Voorkom ik No Show
Hoe Voorkom ik No Show
 
Ficha de anlisis 2388
Ficha de anlisis 2388Ficha de anlisis 2388
Ficha de anlisis 2388
 
Roggmann verfahren
Roggmann verfahrenRoggmann verfahren
Roggmann verfahren
 
Sas
SasSas
Sas
 
Vortrag hagen 2014_a
Vortrag hagen 2014_aVortrag hagen 2014_a
Vortrag hagen 2014_a
 
Convenience Payment im Multichannel Expercash Vortrag Internet World 2014
Convenience Payment im Multichannel Expercash Vortrag Internet World 2014Convenience Payment im Multichannel Expercash Vortrag Internet World 2014
Convenience Payment im Multichannel Expercash Vortrag Internet World 2014
 
Rebeldes
RebeldesRebeldes
Rebeldes
 
Erwachsenenbildungs-Magazin dreieck 02/2012
Erwachsenenbildungs-Magazin dreieck 02/2012Erwachsenenbildungs-Magazin dreieck 02/2012
Erwachsenenbildungs-Magazin dreieck 02/2012
 
Christmas in germany ppt nikola
Christmas in germany ppt nikolaChristmas in germany ppt nikola
Christmas in germany ppt nikola
 
Horari dibuixos
Horari dibuixosHorari dibuixos
Horari dibuixos
 
Mein Social Media Lebenslauf
Mein Social Media LebenslaufMein Social Media Lebenslauf
Mein Social Media Lebenslauf
 
Evaluation des Bürgerhaushalts der Stadt Köln
Evaluation des Bürgerhaushalts der Stadt KölnEvaluation des Bürgerhaushalts der Stadt Köln
Evaluation des Bürgerhaushalts der Stadt Köln
 
PIRATEPARTEI – PK Steierreform vum 2. Dezember 2015
PIRATEPARTEI – PK Steierreform vum 2. Dezember 2015PIRATEPARTEI – PK Steierreform vum 2. Dezember 2015
PIRATEPARTEI – PK Steierreform vum 2. Dezember 2015
 
Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)
Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)
Vortrag Paderborn Objektportale (Arbeitsstand: 14.1.2013)
 
Dienstleistungsorientierung in Industrieunternehmen
Dienstleistungsorientierung in IndustrieunternehmenDienstleistungsorientierung in Industrieunternehmen
Dienstleistungsorientierung in Industrieunternehmen
 
Wie evaluiert man einen Bürgerhaushalt?
Wie evaluiert man einen Bürgerhaushalt?Wie evaluiert man einen Bürgerhaushalt?
Wie evaluiert man einen Bürgerhaushalt?
 
Ingrid mösslacher pp
Ingrid mösslacher ppIngrid mösslacher pp
Ingrid mösslacher pp
 
5 Tips voor Succes met Hybride Evenementen
5 Tips voor Succes met Hybride Evenementen5 Tips voor Succes met Hybride Evenementen
5 Tips voor Succes met Hybride Evenementen
 
D16 slide share_de
D16 slide share_deD16 slide share_de
D16 slide share_de
 

Semelhante a Kürzere Testvorbereitungsphasen durch integrierte Testlabore

Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?
Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?
Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?
Nico Orschel
 
Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013
Nico Orschel
 
Adruni Ishan Unified Workplace V2
Adruni Ishan   Unified Workplace V2Adruni Ishan   Unified Workplace V2
Adruni Ishan Unified Workplace V2
Adruni Ishan
 
Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung
Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung
Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung
Nico Orschel
 

Semelhante a Kürzere Testvorbereitungsphasen durch integrierte Testlabore (20)

Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?
Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?
Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?
 
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon DickmeißReal Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
Real Application Testing - DOAG SIG Database 2010 - Simon Dickmeiß
 
Spontan testen! Das eigene Test Lab, für jeden in der Cloud!
Spontan testen! Das eigene Test Lab, für jeden in der Cloud!Spontan testen! Das eigene Test Lab, für jeden in der Cloud!
Spontan testen! Das eigene Test Lab, für jeden in der Cloud!
 
Iks Sonderdruck Eclipse Magazin Mai 2010: Automatisierte SWTBot-Tests
Iks Sonderdruck Eclipse Magazin Mai 2010: Automatisierte SWTBot-TestsIks Sonderdruck Eclipse Magazin Mai 2010: Automatisierte SWTBot-Tests
Iks Sonderdruck Eclipse Magazin Mai 2010: Automatisierte SWTBot-Tests
 
Vagrant
VagrantVagrant
Vagrant
 
Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013
 
Automated testing of JavaFX UI components
Automated testing of JavaFX UI componentsAutomated testing of JavaFX UI components
Automated testing of JavaFX UI components
 
PAVONE Espresso Workflow für Java EE
PAVONE Espresso Workflow für Java EEPAVONE Espresso Workflow für Java EE
PAVONE Espresso Workflow für Java EE
 
Das eigene Test Lab, für jeden! (CeBIT-Edition mit Demo-Videos)
Das eigene Test Lab, für jeden! (CeBIT-Edition mit Demo-Videos)Das eigene Test Lab, für jeden! (CeBIT-Edition mit Demo-Videos)
Das eigene Test Lab, für jeden! (CeBIT-Edition mit Demo-Videos)
 
DevOps Prinzipien im Zusammenspiel mit Kubernetes
DevOps Prinzipien im Zusammenspiel mit Kubernetes DevOps Prinzipien im Zusammenspiel mit Kubernetes
DevOps Prinzipien im Zusammenspiel mit Kubernetes
 
Vorteile und Einsatzfelder integrierter Toolsets zur Modellierung von Manufac...
Vorteile und Einsatzfelder integrierter Toolsets zur Modellierung von Manufac...Vorteile und Einsatzfelder integrierter Toolsets zur Modellierung von Manufac...
Vorteile und Einsatzfelder integrierter Toolsets zur Modellierung von Manufac...
 
Test-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetpro
Test-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetproTest-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetpro
Test-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetpro
 
Plm Open Hours - Detailkonzepte welcher Art führen zu erfolgreichen Implement...
Plm Open Hours - Detailkonzepte welcher Art führen zu erfolgreichen Implement...Plm Open Hours - Detailkonzepte welcher Art führen zu erfolgreichen Implement...
Plm Open Hours - Detailkonzepte welcher Art führen zu erfolgreichen Implement...
 
Adruni Ishan Unified Workplace V2
Adruni Ishan   Unified Workplace V2Adruni Ishan   Unified Workplace V2
Adruni Ishan Unified Workplace V2
 
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
 
Umdenken bei Softwaretests
Umdenken bei SoftwaretestsUmdenken bei Softwaretests
Umdenken bei Softwaretests
 
Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung
Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung
Links und rechts des Weges: Qualitätssicherung ist mehr als Testfallverwaltung
 
Vortragsreihe Dortmund: Unified Development Environments
Vortragsreihe Dortmund: Unified Development EnvironmentsVortragsreihe Dortmund: Unified Development Environments
Vortragsreihe Dortmund: Unified Development Environments
 
Windows as a Service - Herausforderungen ohne Windows Desktop Analytics
Windows as a Service - Herausforderungen ohne Windows Desktop AnalyticsWindows as a Service - Herausforderungen ohne Windows Desktop Analytics
Windows as a Service - Herausforderungen ohne Windows Desktop Analytics
 
BASTA 2016 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch...
BASTA 2016 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch...BASTA 2016 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch...
BASTA 2016 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch...
 

Mais de Nico Orschel

Mais de Nico Orschel (16)

TFS Release Management Deep Dive
TFS Release Management Deep DiveTFS Release Management Deep Dive
TFS Release Management Deep Dive
 
95 Prozent brauchen es, 5 Prozent machen es: Load Testing mit VS leicht gemacht
95 Prozent brauchen es, 5 Prozent machen es: Load Testing mit VS leicht gemacht95 Prozent brauchen es, 5 Prozent machen es: Load Testing mit VS leicht gemacht
95 Prozent brauchen es, 5 Prozent machen es: Load Testing mit VS leicht gemacht
 
TFS 2015: Build und Release der neuen Generation
TFS 2015: Build und Release der neuen GenerationTFS 2015: Build und Release der neuen Generation
TFS 2015: Build und Release der neuen Generation
 
Testing XAML-based Windows Store Apps mit VS 2013
Testing XAML-based Windows Store Apps mit VS 2013Testing XAML-based Windows Store Apps mit VS 2013
Testing XAML-based Windows Store Apps mit VS 2013
 
DWX 2014 - Testmanagement mit Visual Studio 2013
DWX 2014 - Testmanagement mit Visual Studio 2013DWX 2014 - Testmanagement mit Visual Studio 2013
DWX 2014 - Testmanagement mit Visual Studio 2013
 
DWX 2014 - Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
DWX 2014 -  Coded UI in der Praxis: Von Lokalisierung bis NachhaltigkeitDWX 2014 -  Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
DWX 2014 - Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
 
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
 
UI Testautomation in der Praxis: Von Lokalisierung bis Nachhaltigkeit
UI Testautomation in der Praxis: Von Lokalisierung bis NachhaltigkeitUI Testautomation in der Praxis: Von Lokalisierung bis Nachhaltigkeit
UI Testautomation in der Praxis: Von Lokalisierung bis Nachhaltigkeit
 
UI Testautomation in der Praxis ... von Lokalisierung bis Nachhaltigkeit (Cod...
UI Testautomation in der Praxis ... von Lokalisierung bis Nachhaltigkeit (Cod...UI Testautomation in der Praxis ... von Lokalisierung bis Nachhaltigkeit (Cod...
UI Testautomation in der Praxis ... von Lokalisierung bis Nachhaltigkeit (Cod...
 
Ein Dialog unter Fremden: Testautomatisierung in der Praxis
Ein Dialog unter Fremden: Testautomatisierung in der PraxisEin Dialog unter Fremden: Testautomatisierung in der Praxis
Ein Dialog unter Fremden: Testautomatisierung in der Praxis
 
Test Management mit Visual Studio 2012 (Developer Week 2013)
Test Management mit Visual Studio 2012 (Developer Week 2013)Test Management mit Visual Studio 2012 (Developer Week 2013)
Test Management mit Visual Studio 2012 (Developer Week 2013)
 
Application Lifecycle Management für Tester (mit TFS 2012)
Application Lifecycle Management für Tester (mit TFS 2012)Application Lifecycle Management für Tester (mit TFS 2012)
Application Lifecycle Management für Tester (mit TFS 2012)
 
Automatisiertes Testen mit CodedUI (ohne Frust)
Automatisiertes Testen mit CodedUI (ohne Frust)Automatisiertes Testen mit CodedUI (ohne Frust)
Automatisiertes Testen mit CodedUI (ohne Frust)
 
Software Testen mit Visual Studio Lab Management
Software Testen mit Visual Studio Lab ManagementSoftware Testen mit Visual Studio Lab Management
Software Testen mit Visual Studio Lab Management
 
Test Management mit Visual Studio 2012
Test Management mit Visual Studio 2012Test Management mit Visual Studio 2012
Test Management mit Visual Studio 2012
 
Testautomatisierung mit CodedUI für Fortgeschrittende
Testautomatisierung mit CodedUI für FortgeschrittendeTestautomatisierung mit CodedUI für Fortgeschrittende
Testautomatisierung mit CodedUI für Fortgeschrittende
 

Kürzere Testvorbereitungsphasen durch integrierte Testlabore

  • 1. advertorial der autor Nico Orschel (E-Mail: nico.orschel@aitgmbh.de) ISTQB zertifizierter Software-Tester und Berater des AIT TeamSystemPro Teams. Hat sich u. a. anderem auf das automatische Testen mit dem Visual Studio Lab Management spezialisiert. Berät Unternehmen bei der Einführung und Anpassung des Visual Studio Team Foundation Server. Seine Erfahrungen vermittelt er zudem als Autor des TFS-Blogs, in Magazinen und in Vorträgen. Kürzere Testvorbereitungsphasen durch integrierte Testlabore Die aktuellen Release-Zyklen von Software-Projekten haben sich in den letzten Jahren eher verkürzt, u. a. weil agile Vorgehensmodelle sich in dieser Zeit rapide verbreitet haben und damit einhergehend Entwicklungs- und Testzyklen kürzer wurden. Dies stellt alle Projektbeteiligte vor neue Herausforderungen, wie z. B. viele Zwischen-Softwareversionen in Testumgebungen effizient bereitzustellen sowie die Sicherstellung der Lauffähigkeit von bereits implementierten Funktionalitäten durch automatisierte Tests. Im Vorjahresartikel (siehe [1]) konnte bereits der Austausch von Informationen zwischen Tester und Entwickler durch den Einsatz vom Team Foundation Server (kurz TFS) und dem Microsoft Testmanager (kurz MTM) optimiert werden. Der Fokus lag hierbei primär darauf, die Bereiche Testmanagement und Bugtracking über die gemeinsame Entwicklungsplattform Team Foundation Server zu integrieren und Bug-Reports, mit automatisch im Hintergrund erfassten Diagnoseinformationen, für eine bessere Reproduzierbarkeit zu erstellen. Ein unscheinbarer Bereich mit massivem Einsparpotenzial ist nach unserer Erfahrung der Betrieb und das Management von Testumgebungen. In der Testvorbereitungs- phase schlummert zusätzlich noch eine Menge ungenutztes Potenzial bei der automatischen Bereitstellung der Testobjekte in die Testumgebungen. In diesem Artikel zeigen wir Ihnen Wege, wie Sie diese Herausforderungen effizient und effektiv mit dem Visual Studio 2010 Lab Management meistern können. Einfache Bereitstellung von schon zu spät ist. An diesem Punkt kann Funktionalität kann die Testabteilung vir- Testumgebungen das TFS 2010 Lab Management sowohl tuelle und physische Testumgebungen ein- Bei vielen unserer Kunden beginnen die den Tester als auch den IT-Administrator facher verwalten. Bei virtuellen Umgebugen Testvorbereitungen mit der Bereitstellung entlasten. Mit der TFS-Lab-Management- bedeutet dies, dass man in Eigenregie ein- von Testumgebungen durch eine dedizierte interne IT-Abteilung, die für die Bereit - stellung und den Betrieb zuständig ist. Eine solche „einfache“ Bereitstellung von Testumgebungen kann aufgrund von eta- blierten IT-Betriebs- und Bereitstellungs - prozessen gerade bei mittleren bis großen Unternehmen mitunter mehrere Wochen in Anspruch nehmen. Die Bearbeitungsdauer steht damit in direktem Widerspruch zu den Testzyklen bei agilen Entwicklungs - prozessen. Für agile Teams ist eine poten- zielle Dauer von drei bis vier Sprints schlichtweg untragbar. Unterstellt man dann noch die für einen agilen Prozess typi- schen sich verändernden Rahmenbedingun- gen und Anforderungen, dann bekommt ein Team die Testumgebung immer dann zur Verfügung gestellt, wenn es eigentlich Abb. 1: TFS 2010 Lab Management Infrastruktur 1 www.objektspektrum.de
  • 2. Online-Themenspecial Testing 2011 advertorial Microsoft Virtualisierungslösung Hyper-V (siehe Hyper-V Host in Abbildung 1). Ein oder mehrere dieser Server werden über die Managementlösung System Center Virtual Machine Manager 2008 R2 (kurz SCVMM) an den TFS angebunden. Alle Hyper-V-Hosts aus Abbildung 1 werden zentral über SCVMM Library Shares mit Software und Vorlagen von virtuellen Maschinen und vorkonfigurierten Testum- gebungen versorgt. Der SCVMM ist bereits ohne zusätzliche Lizenzkosten Teil der Lab- Management-Lizenz (Lizenzierungsdetails siehe [3]). Diese wiederum ist Teil der Abb. 2: Microsoft Testmanager 2010 Lab Center Programmpakete Test Professional (Micro- soft Testmanager) und Visual Studio 2010 Ultimate. fach und schnell virtuelle Maschinen erstel- zur Verfügung stellen. Über Unterschiede Als Tester sehen Sie von diesen techni- len, ändern und löschen kann. Im zwischen beiden Testumgebungstypen schen Details im Hintergrund nichts, denn Folgenden werden wir uns auf den Typ der informiert das Whitepaper unter [2]. Sie verwalten diese Testumgebungen nur virtuellen Testumgebungen beschränken, Die technische Basis für den Betrieb von über ihren MTM in der Lab-Center- weil nur diese den vollen Leistungsumfang virtuellen Umgebungen bilden Server mit der Perspektive (siehe Abbildung 2). Die zwei- Abb. 3: Anlegen einer Testumgebung im MTM Online-Themenspecial Testing 2011 2
  • 3. advertorial stellen, so als würden sie mit Legosteinen einem IT-Administrator diese Frage stellt, bauen. Abbildung 3 zeigt diesen sehr einfa- dann wird man sicherlich die Antwort chen Prozess, wie die Tester mit nur vier erhalten, dass dies technisch nicht möglich Schritten Testumgebungen bereitstellen ist. Man hört in dieser Situation techni- können. In der Abbildung wird in Schritt schen Ausführungen wie u. a., dass Rech- 1. zunächst der Umgebungstyp „Virtual nername und IP Adresse im Netzwerk stets Environment“ ausgewählt, um die zuvor eindeutig sein müssen (siehe Abbildung 4). beschriebenen Vorlagen als Basis für eine Genau für diesen Anwendungsfall wurde neue Testumgebung auszuwählen. In beim TFS 2010 Lab Management die Schritt 2 hat die Auswahl der Vorlagen Funktion „Network Isolation“ eingeführt. dann stattgefunden. Danach müssen im 3. Mit Hilfe eines Dienstes – dem sogenann- Schritt noch die notwendigen Eigenschaf- ten Lab Agent – in den virtuellen ten der Testumgebung, wie Workflow-, Maschinen (siehe Abbildung 1 und Testing- und Network-Isolation-Unterstüt- Abbildung 5) können diese voneinander zung aktiviert werden. Die Eigenschaften isoliert betrieben werden, obwohl es sich sind notwendig, um Deployment-Skripte um Klone handelt. Das Duplizieren ist auszuführen, sowie für automatische Tests dank dieser Funktion so einfach wie das und das Sammeln von Diagnosedaten. In Kopieren einer CD. Schritt 4 können Sie die Erstellung mit Ein weiterer positiver Nebeneffekt dieser Abb. 4: Duplizieren einer Testumgebung Finish starten. Funktion besteht darin, dass Sie somit der ohne Network Isolation Wichtig bei der Testausführung ist die Entwicklungsabteilung Duplikate ihrer Isolation unterschiedlicher Tester, um Umgebungen zur Verfügung stellen kön- te Perspektive des MTM ist das bekannte gegenseitige Auswirkungen von Tests zu nen. Im vorherigen Artikel wurde bereits Test-Center für das Testmanagement und minimieren. Diese Anforderung macht es das Konzept der Rich-Bugs, d. h. Bugs mit die Testausführung (siehe [1]). notwendig, Testumgebungen für jeden zusätzlichen Diagnoseinformationen vorge- Jetzt stellt sich hier natürlich die Frage: beteiligten Tester zur Verfügung zu stellen. stellt. Trotz dieser vielen Informationen las- Welche Schritte sind für die Bereitstellung Unter normalen Umständen bedeutet dies, sen sich Fehler in Entwicklungsumge- einer virtuellen Testumgebung mit dem dass Sie den Prozess aus Abbildung 3 für bungen nicht immer nachvollziehen und MTM notwendig? Der Bereitstellungs - jeden Tester x-mal wiederholen. Der man benötigt als Entwickler besser die prozess beginnt damit, dass die interne IT- Nachteil dieser Vorgehensweise ist gerade ursprüngliche Testumgebung des Testers. Abteilung Vorlagen von virtuellen Ma- bei komplexen Testumgebungen der hohe Mit der Duplizierungsfunktion kann man schinen nur einmalig erstellt (siehe Library Zeitaufwand und die Fehleranfälligkeit bei als Tester einfach die Umgebung duplizie- Share in Abbildung 1). In diesen Vorlagen der Konfiguration und zusätzlichen Instal- ren und dem Entwickler zur Verfügung stel- werden dabei Software-Agenten der TFS lationen. Wäre es nicht schön, wenn Sie len. Ein Beispiel für dieses Szenario im Falle Plattform (Build Agent, Test Agent und Lab den Aufwand der Testumgebungsvor- eines Fehlers zeigt Abbildung 6. Mehr Agent) zur Fernsteuerung und weitere bereitung nur einmal tätigen müssten und noch, es lässt sich ein Link auf den Software (in Abhängigkeit vom Testszena- anschließend einfach für jeden Tester ein Snapshot der virtuellen Maschine zum rio) vorinstalliert. Anschließend werden exaktes Duplikat anzufertigen? Wenn man Zeitpunkt des Fehlereintritts anhängen und diese generalisiert (Fachwort: syspreping) dem Entwickler somit die gesamte „einge- und dann über den SCVMM Library Share frorene“ Testumgebung übermitteln. den MTM-Clients zur Verfügung gestellt, so dass später auf ihrer Basis nach Bedarf Kompilieren, Ausliefern und neue Maschinen erzeugt werden können. Testen Nachdem man eine Vorlage in die Libary Nachdem die Testumgebungen durch den Share kopiert hat, müssen diese einmalig MTM und Lab Management bereitgestellt im Lab Center registriert werden. Bei die- wurden, bleibt noch der Punkt der sem Registrierungsprozess werden Bereitstellung von Testobjekten durch die Standardwerte für Computereinstellungen, Entwicklung offen. Bei der Bereitstellung wie z. B. Rechnername, Speicher, Admi - von Testobjekten folgt das aktuelle Kapitel nistrator-Konto, Administrator-Passwort der Methodik „Continous Delivery“. und Lizenzschlüssel hinterlegt, damit Continous-Delivery-Prozesse (im Folgen- Anwender diese Daten nicht bei jedem den kurz CD genannt) bestehen aus drei Anlegen von Testumgebungen bei der IT- Phasen: Übersetzen der Lösung, Ausliefern Abteilung erfragen bzw. doppelt und drei- oder Installieren der Lösung in einer fach eintragen müssen. Ist die Vorlage Zielumgebung und abschließend die erfolgreich im Lab-Center registriert, dann Ausführung von automatisierten Tests. An können Tester Testumgebungen, bestehend dieser Stelle fällt sofort die Ähnlichkeit zu aus einem oder mehreren Rechnern, auf Abb. 5: Duplizieren einer Testumgebung dem weitverbreiteten Begriff Continous Basis dieser Vorlagen einfach zusammen- mit Network Isolation Integration (im Folgenden kurz CI) auf. CI 3 www.objektspektrum.de
  • 4. Online-Themenspecial Testing 2011 advertorial thematik aus dem vorherigen Abschnitt zum Begriff Lab Management zusammen- gefasst wird. Ein Lab Management Workflow sorgt zu Beginn für die Übersetzung des jeweiligen Codes. Technisch gesehen führt der Lab Management Workflow einfach einen bereits existierenden Release-Build-Prozess der Entwicklung aus, so dass man für Testumgebungen und spätere Releases nur einen Build-Prozess pflegen muss. Nach der Kompilierungsphase stellt der Workflow eine Verbindung zu den Testumgebungen her und setzt diese im Fall von virtuellen Testumgebungen auf einen definierten Stand (Fachwort: Abbild oder Snapshot) zurück. Nachdem die Verbindung herge- stellt wurde, wird die Anwendung über Skripte oder Installationsprogramme in die Testumgebung ausgerollt. Die Art und Weise des Rollout-Verfahrens ist abhängig vom jeweiligen Artefakttyp (Programm, Website, Datenbankskript, Testdaten). Nach dem Rollout wird im Fall von vir- Abb. 6: Wiederherstellung einer Testumgebung im Fehlerfall tuellen Testumgebungen ein weiteres Abbild der Testumgebung erzeugt. Dieses besteht aus der Prozesssicht aus zwei LabDefaultTemplate.xaml realisiert, wel- spezielle Abbild hat den Vorteil, dass Tester Hauptphasen: Übersetzen der Lösung und che bereits alle notwendigen Basisschritte und Entwickler ihre Umgebungen zu jedem anschließendes Ausführen von Unit Tests. zur Verfügung stellt. Microsoft hat mit dem Zeitpunkt in einen nicht durch Tests beein- Die Unterschiede liegen dabei zum einen Workflow einen Release-Prozess entspre- flussten Zustand zurücksetzen können. darin, dass CI-Build-Prozesse keine Soft - chend der Darstellung in Abbildung 7 rea- Werden Testobjekte in der Testumgebung ware in Zielumgebungen ausliefern und lisiert, welcher neben der Infrastruktur - bereitgestellt, starten anschließend die zum anderen, dass nur Modul- bzw. automatischen Tests in der Testumgebung. Komponententests (Unit Tests) in Isolation Die hier ausgeführten Tests sind nicht mehr ausgeführt werden. CI verfolgt im Gegen- wie bei CI auf die Modul- oder Komponen- satz zum CD das Ziel, schnell Feedback tenebene begrenzt, sondern die Anwen- an die Entwickler zu liefern. CD hin- dungen können auch direkt ausge- gegen führt die Tests an führt werden. Zum Testen von Testobjekten in den jeweiligen Oberflächen (wie z. B. Zielumgebungen aus. Die Ziel- WinForms, WPF, Silverlight, umgebungen sind dabei an Webanwendungen im IE und den Produktivumgebungen Firefox) kann man hier das angelehnt. Desweiteren set- neue CodedUI Framework zen die Tests eine lauffähige einsetzen. Die auszuführen- Software für die Ausfüh- den Tests werden über rung voraus. Die auszufüh- Testfälle, welche über renden Tests haben als Testpläne und Testsuiten im Fokus die Testphasen TFS 2010 strukturiert sind, Systemtest oder Akzeptanz- ausgewählt (Testfallmanage- test und sind dadurch szena- ment mit MTM siehe [1]). rio-orientiert – prüfen also Wenn ein Fehler auftritt bzw. potentiell das Software-Produkt ein Testfall nicht erfolgreich war, als Ganzes. Zusammengefasst stellt dann kann der Tester die Test- CD erstmals die Verbindung zwischen umgebung im Fehlerzustand „einfrie- Testumgebung und Release-Prozess her. ren“, so dass der Entwickler neben den Es ist damit ein „CI plus“. Testprotokollen auch eine Testumgebung Der zuvor beschriebene CD-Prozess ist zur Fehlerdiagnose zur Verfügung hat. beim TFS 2010 über eine spezielle Build- Auf den ersten Blick scheint der beschrie- Workflow-Vorlage mit dem Namen Abb. 7: Lab Management Workflow bene Workflow recht kompliziert zu konfi- Online-Themenspecial Testing 2011 4
  • 5. advertorial gurieren, er lässt sich aber dank der Zeit zu kopieren. Umfangreiche Konfigu- zur Verfügung stehen, so dass manueller Assistenten im Visual Studio 2010 schritt- rations- und Installationsarbeiten können Aufwand sowohl auf Seiten der weise einrichten (technische Details siehe so eingespart werden und Tester können Qualitätssicherung- und Entwicklungs- [2]). sich auf die Testspezifikation und -ausfüh- abteilung eingespart werden kann. Das TFS rung konzentrieren. Die Lab-Management- Lab Management umfasst bereits einen Fazit Infrastruktur hat zusätzlich noch den posi- Standard-Workflow, welcher der Methodik Der Artikel zeigt Ihnen Wege, wie Sie mit- tiven Nebeneffekt, dass Tester ihre „Continuous Delivery“ folgt. Konkret hilfe des TFS 2010 Lab Management die Testumgebungen mit den Entwicklern „tei- bedeutet dies, dass er bereits die Testvorbereitungsphase optimieren kön- len“ können. Die Entwickler können „Continuous Delivery“ – Phasen Kompi- nen. Die Bereitstellung von Testumge- dadurch beim Testen und beim lieren, Ausliefern und Testen unterstützt. bungen im Baukastenprinzip kann mithilfe Nachvollziehen von Fehlern auf die glei- Im Rahmen des Schrittes Testen wird des MTM durch Tester stark vereinfacht chen Testumgebungen zugreifen. Durch die bereits eine erste Eingangsprüfung über werden. Für die Tester wird dabei kein neu- enge Verzahnung von Build-Prozessen der automatisierte Tests durchgeführt, so dass es Werkzeug benötigt, sondern es wird nur Entwicklung mit den Testumgebungen nur Programme mit bestimmten Qualitäts- eine andere Perspektive des MTM (Lab können neue Releases schnell, regelmäßig standards ihren Weg in die manuellen Center) genutzt. Die interne IT-Abteilung und automatisiert in den Testumgebungen Testphasen finden. kann durch diese neue Arbeitsweise stark entlastet werden, weil sie nicht mehr jede Umgebung individuell aufsetzen, sondern jetzt nur noch Vorlagen für virtuelle Maschinen sowie die entsprechenden Host- Referenzen Systeme zur Verfügung stellen müssen. Gerade bei agilen Projekten gehören [1]: Ausweg aus der Kommunikationskrise oder das Ende von „Bei mir funktioniert’s“?: Wartezeiten von mehreren Sprints dank http://www.sigs.de/publications/os/2010/Testing/orschel_OS_TESTING_2010.pdf dieser neuen Möglichkeiten der Vergan- [2]: Whitepaper Lab Management: http://www.aitgmbh.de/labmngwhitepaper genheit an. Zusätzlich haben Tester nun die [3]: Visual Studio 2010 and MSDN Licensing White Paper: Möglichkeit, wenn einmal eine komplexe http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=13350 Umgebung aufgesetzt ist, diese einfach [4]: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment durch die Duplizierungsfunktion (Network Automation, Addison-Wesley Longman, ISBN: 0321601912 Isolation) ähnlich wie eine CD in kürzester 5 www.objektspektrum.de