Visual Studio Application Life Cycle Management – Lab Management concept Part (2/2)

Inleiding

In het eerste deel van dit artikel, zijn zowel het Visual Studio Application Management 2010 (VS ALM 2010) als de basis begripen van Lab Management 2010 uitgelegd.
Nogmaals het ALM 2010 concept maakt het mogelijk om de faciliteiten van Lab Management te integreren met andere development en test tools voor de Microsoft Platform, denk hierbij aan:
·         Microsoft Visual Studio Ultimate/Premium en /of Professional 2010
·         Microsoft Visual Studio Team Foundation Server 2010
·         Microsoft Visual Studio Test Manager 2010
In dit tweede deel van het artikel, zal diep ingaan worden op de configuratie en het gebruik van Lab Management bij het testen van de Applicaties met Microsoft Test Mamager 2010 (MTM2010).
 
Een belangrijk aspect bij het gebruik van Lab Management draagt toe aan het begrip van het vangen van regressies vroeg in de ontwikkeling cyclus en in het hebben van een kant-en-testomgeving voor verdere testen. Met dit idee zal verder uitgeledg worden hoe Lab Management daarbij kan helpen.

Installatie / Configuratie van Lab Management onderdelen

Lab Management heeft eigen infrastructuur hardware en software requirements, deze zijn in deel 1 van dit artikel uitvoerig besproken.
Het doel van Lab Management is, ontwikkel en testteams de mogelijkheid te bieden om te kunnen samenwerken, het buildprocess te optimaliseren en de inspannning voor het regressietesten te minimaliseren wat kosten besparing als positieve effect zal hebben. Lab Management maakt gebruik van System Center Virtual Machine Manager (SCVMM) technologie. 
 
Onderstaande schema geeft een architecture van Lab Management weer in verhouding tot TFS en andere componenten:
 
Figure1: Lab Management Architecture
 
Om Visual Studio Lab Management 2010 te kunnen gebruiken in combinatie met TFS 2010 Build Management en Microsoft Test Manager 2010, dienen een aantal agents en controllers geistalleerd en geconfigureerd te worden namelijk:
·         Lab Agent
·         Test Agent
·         Build Agent
·         Test Controller
·         Build Controller
Deze agents dienen op de Lab omgeving geinstalleerd te worden en communiceren vervolgens met TFS Server via de desbetreffende Controllers namelijk Test Controller en Build Controller.
 
Om meer informatie te vinden over hoe deze Agents en Controllers geinstalleerd/geconfigureerd kunnen worden, verwijs ik naar deze link: Installing and Configuring Visual Studio Agents and Test and Build Controllers
 
Na de installatie en configuratie van Lab Management en de bijbehorende componenten in ternem van Agents en Controlleers, is het zaak om de testen uit tevoeren gebruik makend van de Lab Management omgeving die gecreeerd is.
 
Lab Management kan zowel fysiek als virtueel opgezet worden afhankelijk van de organisatie behoeften in de gekozen infrastructuur.
 
Onderstaande schema laat zien hoe de Test Architecture eruit ziet en welke onderdelen daarvan kunnen acteren met Lab Management componenten.
 
Figure2: Test Architecture
 
Wanneer een Lab Management omgeving is opgebouwd, kunnen de test omgevingen eraan toe toegevoegd worden denk hierbij aan de benodigde server die nodig zijn om een specifieke test uit te kunnen voeren. In de onderstaande figuur, zie je een voorbeeld van een Test omgeving opgebouwd in Lab Management omgeving waarvan gebruik gemaakt kan worden van de zowel Database Server als van Web Server (IIS) om een specifieke test uit te kunnen voeren.
 
Figure3: Voorbeeld van Test omgeving opgebouwd in Lab Management (Lab Center)

Testen met Microsoft Test Manager en de relatie tot Lab Management

Microsoft Test-en Lab Manager is een Windows Presentation Foundation Tool op basis van rich client. Het Lab Center in Test-en Lab Manager bied je de mogelijkheid om o.a:
·         Creëren en beheren van virtuele of fysieke omgevingen
·         Omgeving snapshots te nemen of terug te keren naar de bestaande snapshots in geval van virtuele omgevingen
·         Verzorgd de Interactie met de virtuele machines in de omgevingen door middel van omgeving-viewer
·         Definieer testen instellingen voor de omgeving

Testen met MTM2010:

Met Microsoft Test Manager 2010, kan zowel Manual als Automated getest worden. In de Test Center gedeelte van MTM 2010 Tool, Test Plans, Test Suites en Test Cases kunnen gemaakt worden, vervolgens kunnen deze uitgevoerd worden op Lab Management omgeving(en).
 
Onderstaand een voorbeeld van Test Case gecreeerd in Microsoft Test Manager 2010:
 
Figure4: Voorbeeld van Test Case in MTM2010
 
Een Test Plan dat bevat de gecreerde Test Case vanuit MTM 2010, ziet er alsvolgt uit:
 
Figure5: Voorbeeld van Test Plan dat bevat TestCase in MTM2010

Automatisch tests uitvoeren middels CodedUITest Automation

Regressie test sets helpen een test team om de bestaande functionaliteiten te hertesten. Dat is iets wat regelmatig wordt uitgevoerd om zeker van te zijn dat er gedurend de ontwikkelingen van de applicatie(s) geen rare effects gaan ontstaan in de zin van niet samen werkende applicatie onderdelen en/of ontbrekkende functionaliteiten.
 
Aangezien het uitvoeren van regressie test duur kan uitvalen, is het verstandig om deze te automatiseren en uit te voeren waar /wanneer nodig. Deze test type kun je o.a. onderdeel laten worden van de build process van TFS 2010 die herhaaldelijk wordt uitgevoerd afhankeijk van hoe deze is geconfigureerd.
 
In geval je een Test Case wenst uit te voeren tijdens de build process middels TFS2010, dan dient je deze test case te automatiseren. Hiervoor kan gebruik worden gemaakt van de zogenaamde CodedUI Test type vanuit Visual Studio 2010. Meer informatie over CodedUI Test en de mogelijkheden daarvan, zijn te vinden op de Microsoft Site onder (http://msdn.microsoft.com/en-us/library/dd286681.aspx en http://msdn.microsoft.com/en-us/library/dd286726.aspx ).
 
Middels de eerdere gemaakte Test Plan in MTM2010, een Test Case als onderdeel van Test Plan, kan geautomatiseerd worden door CodedUI Test te koppelen aan de Test Case in de laatste Tab (Asociated Automation) onder Test Case detail gegevens zoals hier onder is afgebeeld.
 
Figure6: Voorbeeld Associated Automation van Test Case Work Item in MTM2010.

TFS 2010 Build Process en Lab Management Build Template configuratie

Om gebruik te mogen maken van de Lab Management faciliteiten vanuit TFS Build 2010, is er “Out of the box” een aparte Lab Default Build Process Template meegeleverd. Deze Template kan gekozen worden bij de Process Tab van een Build Definitie waarin alle parameters die betrekking hebben op Lab Process Settings, Build Number en Logging Verbosity ingegeven kunnen worden zoals hier onder is afgebeeld.
 
Figure7: Lab Default Template en de bijbehorende gegevens t.a.v. integratie met de Build Process.
 
Lab Process Settings kunnen verder ingevuld worden via a wizard zoals aangegeven hieronder:
 
Figure8: Lab Process Settings Workflow.
 
Middels deze wizard, kunnen de gegevens die betrekking hebben op zowel: Environment, Build, Deploy als Test aangegeven worden.
 
Hiermee kan een CodedUI test automatisch worden uitegveod door de Build Process van TFS2010.

Conclusie

Sofware ontwikkeling wordt van dag tot dag complexer. Het opsporen van fouten tijdens de test inspanning in een latere stadium kost veel geld en tijd. Daarom is het van crutiaal belang om gebruik te maken van de faciliteiten (tools, processen en kennis) die tegenwoordig worden geboden door gespecialiseerd berdijven om dagelijks werk zo efficient mogelijk en op een adequate wijze uit te voeren.
 
In dit artikel heb je gezien hoe Lab Management, CodedUI Test en Build Process van TFS2010 goed samenwerken om meer te halen uit de Automation test en om de deployment omgevingen in een OTA concept te creeeren en te beheren middels Lab Management technology.

Referenties

Geef feedback:

CAPTCHA image
Vul de bovenstaande code hieronder in
Verzend Commentaar