Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Virtualizace testovacích prostředí (aka Lab Management) Michael Juřek Software Architect Microsoft s.r.o.

Podobné prezentace


Prezentace na téma: "Virtualizace testovacích prostředí (aka Lab Management) Michael Juřek Software Architect Microsoft s.r.o."— Transkript prezentace:

1 Virtualizace testovacích prostředí (aka Lab Management) Michael Juřek Software Architect Microsoft s.r.o.

2 demo Co bych později nestihnul…

3 Proč virtualizované testování? Architektura a základní pojmy Příprava, vybavení a vytvoření Základní operace s prostředím Služby prostředí Agenda

4 Složitá konfigurace zahrnující více počítačů, vytvoření prostředí je nákladné Řada kombinací, kterou je třeba otestovat – Operační systémy – Jazykové verze – Internetové prohlížeče Výrazné procento chyb nelze reprodukovat Agilní metodiky si žádají rychlé výsledky Nízký stupeň využití testovacího HW Některé bolesti testování

5 … neexistovaly nereprodukovatelné chyby … nebyly bariéry mezi vývojáři a testery … vytvoření realistického testovacího prostředí by místo týdnů trvalo minuty (např. jako součást buildu) Jak by to bylo hezké, kdyby…

6 Tradiční postup testování Build Nasazení aplikace Spuštění testů

7 Virtualizované testování Build Vytvoření VM Nasazení aplikace Snapshot VM Spuštění testů

8 Sdílení kontextu chyby mezi vývojářem a testerem – Pomocí snapshotu virtuálního stroje Výrazné snížení času a pracnosti přípravy testovacího prostředí – Automatické klonování – Samoobslužné vytváření bez nutnosti znalosti virtualizačních produktů Paralelní běh více instancí testovacího prostředí Možnost komplexních konfigurací – Distribuované systémy – Network Isolation – automatická izolace interních virtuálních sítí brání konfliktům IP adres Výhody virtualizovaného testování

9 Proč virtualizované testování? Architektura a základní pojmy Příprava, vybavení a vytvoření Základní operace s prostředím Služby prostředí Agenda

10 Team Foundation Server (TFS) Lab ManagementTest Management Build management Work Item Tracking Source Control Hyper-V Hosts Virtual Machine1 Virtual Machine2 Virtual Machinen Library Shares Library Share1 Library Share2 Library Sharen System Center Virtual Machine Manager (SCVMM)

11 SCVMM server – Spravuje hostitele a knihovní servery – Obsluhuje konfigurační databázi (MS SQL) Library Server (knihovní server) – Uložené referenční virtuály, ISO image instalačních DVD apod. – Pro většinu operací se z něj pouze čte Host (hostitel) – Provozuje virtuály (HyperV) – 1 nebo více hostitelů tvoří Host Group Role v SCVMM

12 Centrální správa hostitelů a virtuálů – Všechny operace nabízené HyperV Nad rámec funkčnosti HyperV – Přesun virtuálů mezi hostiteli – Klonování virtuálů – Uložení virtuálu do knihovny – Vytvoření virtuálu z částí uložených v knihovně – Monitorování HW prostředků hostitele Možnosti SCVMM

13 demo Představení SCVMM

14 Skládá se ze skupiny virtuálních počítačů z nichž každý má nějakou roli (např. webový server, databázový server, klient apod.) – V triviálním případě jediný virtuální počítač Skupina je spravována jako celek: – Spuštění/zastavení – Vytvoření/naklonování/vymazání – Vytvoření/zrušení/aplikování snapshotu Laboratorní prostředí

15 Testing – Spouštění testů UI během automatického buildu anebo manuálně z Test Manageru Workflow – Spouštění skriptů uvnitř virtuálního prostředí během automatického buildu Network Isolation – Nastavení síťových adaptérů a virtuálních sítí pro zamezení konfliktům jmen a IP adres Schopnosti prostředí (capabilities)

16 Šablona počítače – Odkaz na virtuál uložený v knihovně SCVMM – Možnosti nastavení: Množství operační paměti Role, kterou typicky zastává Profil OS, pokud je proveden SYSPREP (klíč, jméno, heslo apod.) Šablona prostředí – Sada šablon počítačů s přidělenými rolemi – Možnost přepsání parametrů počítačů – Definice schopností virtuálního prostředí Šablony v Lab Managementu

17 demo Nastavení LM v TFS Laboratorní prostředí Práce se šablonami

18 Proč virtualizované testování? Architektura a základní pojmy Příprava, vybavení a vytvoření Základní operace s prostředím Služby prostředí Agenda

19 Hostitel – RAM, CPU a disková propustnost (čtení i zápis) pro součet virtuálů a vlastní potřebu – Příklad - můj demo stroj s 10 virtuály: 1 quad-core CPU, 16 GB RAM, 4x SATA disk (RAID 10) Cena v květnu 2009 cca 30.000 Kč Library Server – Např. NAS s RAID5 (výrazná převaha čtení) Síť – Mezi hostitelem a knihovnou by měla být 1 Gbps Hardware

20 Operační systém a aktualizace Další potřebný software ve stavu před instalací aplikace (např. SQL server) Nainstalovaní, nenakonfigurovaní agenti – Network Isolation – vyžaduje Lab Agent – Workflow – vyžaduje Lab Agent a Build Service – Test – vyžaduje Lab Agent a Test Agent Volitelně možno uvést do předinstalovaného stavu (SYSPREP) Software virtuálů

21 Možné varianty: 1.Externí doména – není možné používat Network Isolation, nelze mít více instancí 2.Interní doména – jeden z počítačů prostředí funguje jako Domain Controller 3.Bez domény – režim „workgroup“ Servisní účet v externí doméně: – Pro možnosti 2. a 3. je používán virtuály pro komunikaci s okolím – Není nutné vytvářet duplikované lokální účty – Nastavení na úrovni Team Project Collection Laboratorní prostředí a doména

22 Z fyzických počítačů s Test Agenty (New physical environment) – Omezené možnosti, pouze pro speciální případy (HW testování apod.) Z existujících virtuálů nasazených na hostiteli (Compose) Z definovaných šablon počítačů, jejich nastavením a naklonováním (New virtual environment) Naklonováním šablony prostředí (Deploy) Způsoby vytvoření prostředí

23 Úskalí virtuálů

24 Proč virtualizované testování? Architektura a základní pojmy Příprava, vybavení a vytvoření Základní operace s prostředím Služby prostředí Agenda

25 Stejné jako při správě přes HyperV, ale pro celé prostředí (více počítačů) najednou: – Spuštění (Start) – Pozastavení (Pause) – zůstávají v paměti – „Čisté“ zastavení (Shut down) – „Násilné“ zastavení (Power off) Speciální operace pro Lab Management: – Připojení se k prostředí nebo jednotlivým počítačům – Oprava schopností prostředí – Označení „In Use“ spojené s komentářem Operace nad seznamem prostředí

26 Všechny operace, které lze provést nad seznamem prostředí Interakce s prostředím – Ctrl-Alt-Del, Full Screen Systémové informace o virtuálu Manipulace se snapshoty: – Vytvoření (Create), obnovení (Restore), přejmenování (Rename), vymazání (Delete) – Sdílení (Share) Vytvoří soubor.lvr s definicí prostředí a snapshotu Soubor lze sdílet, jeho otevřením se lze připojit k příslušnému prostředí a snapshotu Operace nad připojeným prostředím

27 demo Základní operace s prostředím

28 Proč virtualizované testování? Architektura a základní pojmy Příprava, vybavení a vytvoření Základní operace s prostředím Služby prostředí Agenda

29 Interní virtuální síť pro každé prostředí MAC adresa, IP adresa i jméno virtuálního počítače mohou být ve více kopiích stejné Virtuály jsou též připojeny na externí síť pomocí unikátní IP adresy a jména Jeden z počítačů může být domain controller Není třeba konfigurovat, vše nastaví Lab Agent Network Isolation IISDB 10.10.1.510.10.1.6 172.22.48.15 172.22.48.16 Copy 1 IISDB 10.10.1.510.10.1.6 172.22.48.17 172.22.48.18 Copy 2 Internal network Lab network

30 demo Network Isolation

31 Workflow Umožňuje spouštět libovolný skript uvnitř virtuálu s právy služby Build Service Typicky užíváno k nasazení nové verze aplikace do virtuálního prostředí (fantazii se ale meze nekladou) Komponenty: – Build Agent (uvnitř virtuálu) – provádí přidělené úlohy – Lab Agent (uvnitř virtuálu) – konfiguruje Build Agenta – Build Controller (vně virtuálu) – spouští workflow a úkoluje Build Agenty

32 Umožňuje spouštět automatizované testy UI uvnitř virtuálu a shromažďovat jejich výsledky – V rámci build workflow – V rámci testování z Test Manageru Komponenty: – Test Agent (uvnitř virtuálu) – spouští testy, sbírá výsledky a doprovodná data – Lab Agent (uvnitř virtuálu) – konfiguruje Test Agenta – Test Controller (vně virtuálu) – řídí a úkoluje Test Agenty Testing

33 demo Workflow, Testing

34 Definice testovacích případů s vazbou na požadavky Vytváření testovacích plánů Spouštění testů se sběrem dat o kontextu a s možností přehrání interakce při dalším spuštění („fast forward“) Monitorování průběhu testování Automatizované testování uživatelského rozhraní Co VS 2010 také umí… … ale nebylo to obsahem dnešní prezentace

35 Závěrem Správa testovacích prostředí je výborně integrována do Visual Studia 2010 Virtualizace testovacího prostředí dramaticky snižuje pracnost přípravy prostředí a zlepšuje efektivitu využití HW prostředků. Snapshot virtuálního prostředí je nejvyšší známou formou dokumentace chyby. Základní zdroj informací: – http://blogs.msdn.com/lab_management/ http://blogs.msdn.com/lab_management/ Chcete pomoci při implementaci? – mjurek@microsoft.com mjurek@microsoft.com


Stáhnout ppt "Virtualizace testovacích prostředí (aka Lab Management) Michael Juřek Software Architect Microsoft s.r.o."

Podobné prezentace


Reklamy Google