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 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

3 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í

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

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

6 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í

7 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

8 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)

9 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

10 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

11 Fyzické: Vzdálené OS, na kterých lze spouštět automatizované testy (žádné další funkce) Fyzické nebo virtuální (libovolný virtualizační produkt) Virtuální: Vzdálené virtuální OS na HyperV, spravované SCVMM, které nabízí kompletní sadu funkcí Porovnání: Kdykoliv je to možné, použijte virtuální prostředí us/library/dd aspx Dále se budeme věnovat pouze virtuálním prostředím Typy testovacích prostředí

12 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 Virtuální testovací prostředí

13 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)

14 Š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

15 demo Laboratorní prostředí Práce se šablonami

16 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

17 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 Kč Library Server Např. NAS s RAID5 (výrazná převaha čtení) Síť Mezi hostitelem a knihovnou by měla být 1 Gbps 3/planning-considerations-for-setting-up-a-lab-managed-by- visual-studio-lab-management-2010.aspxHardware

18 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ů

19 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

20 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í

21 Úskalí virtuálů

22 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

23 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í

24 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

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

26 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

27 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 Copy 1 IISDB Copy 2 Internal network Lab network

28 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

29 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

30 demo Network Isolation, Workflow, Testing

31 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í: Chcete pomoci při implementaci?


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

Podobné prezentace


Reklamy Google