how effectively prepare test bed
Výzvy a osvědčené postupy pro testování testovacího prostředí / testovacího prostředí:
Při několika příležitostech zjistili testeři, že jejich vady jsou odmítány kvůli problémům s životním prostředím, nebo se z podobných důvodů vady neustále replikují. Při otevírání největšího počtu vad musí být jistě jedna z osobních měřítek každého testera, většina testerů musí také zdůraznit, že má největší počet platných vad.
Jak toho lze dosáhnout?
Kromě dalších aspektů, jako je plánování různých testovacích scénářů a důkladné porozumění řádkové položce, a do nastavení zkušebního zařízení nebo zkušebního prostředí je třeba investovat značné množství času . Zadruhé, i přes odhadovanou částku za plánování testovacích případů musí testeři také zaměřit své energie na vytváření efektivních testovacích dat .
Osobně jsem jako součást procesu auditu zjistil, že největší počet platných vad se zjistí, když bylo vynaloženo značné úsilí na správné vytvoření testovacího prostředí nebo testovacího prostředí a pokud má tester důkladnou kontrolu porozumění druhu potřebného prostředí.
Také druh testovacích dat dodávaných do testovacího prostředí může odhalit některé velmi závažné nedostatky testovaného kódu / funkce, které mohou vážně ovlivnit kvalitu produktu.
Tento článek hovoří o tom, co přesně Test Bed zahrnuje: Jedná se o dvoustupňový proces nastavení testovacího prostředí a nastavení testovacích dat:
Část 1) Předchozí část článku pojednává o obecný proces nastavení testovacího prostředí , nejčastěji problémy s nastavením, kterým čelí testy a ukazatele, které je třeba mít na paměti při vytváření testovacího lůžka místo těchto výzev.
Část 2) Poté, co jsme v tomto článku uvedli tolik o testovacím lůžku, stálo za to vrhnout trochu světla na Údržba testovacího prostředí aspekty také. Druhá část článku pojednává o druhé části nastavení testovacího zařízení, která zahrnuje data testu, přístup k jeho nastavení a některé efektivní Testování technik správy dat .
S neustálým „velkým třeskem“ ve vývoji a testování softwaru se stále více zaměřuje na přijímání různých metodik, aby byl celý proces zajišťování kvality transparentní, efektivní a adekvátní.
V rámci organizací se provádějí různé audity kvality, aby se zajistilo, že výkon testovacího týmu lze vhodně vyhodnotit a má měřitelné výsledky s metrikami identifikovanými při inicializaci testovacího cyklu. Tyto výsledky umožňují identifikovat, kde konkrétní tým stojí, pokud jde o zajištění optimální kvality softwaru, který testuje.
Tyto zprávy také pomáhají týmu pochopit příležitosti ke zlepšení na základě pozorování provedených během auditu.
Není nutné zmínit, že velmi zřejmá metrika pro jakýkoli testovací tým by byla s ohledem na celkový počet otevřených vad oproti počet vad, které jsou platné . Jedna z otázek, které se zjevně objevují, je tedy - Jaký je základ pokusu o odhalení jakékoli vady? Jinak řečeno, na jakém základě lze najít závadu?
Odpověď je jednomyslná - nastavení testovacího prostředí a / nebo testovacího prostředí. V týmech jsou nastaveny měřítka kvality snížit vady, které jsou odmítnuty jako chyba nastavení testu / Chyba uživatele, neplatné konfigurace nebo v některých případech vady, které vzniknou při útěcích od konkrétního týmu kvůli nedostupným konfiguracím, nevyzkoušeným konfiguracím.
Začněme tím, že se blíže podíváme na definici toho, co je Testovací postel nebo Testovací prostředí.
Co se naučíte:
Co je testovací zařízení a testovací prostředí?
Ve velmi obecném smyslu lze testovací postel definovat jako jakési vývojové prostředí, ve kterém mají implementátoři kódu nebo modulů svobodu testování svých modulů bez jakýchkoli narušení testovacího týmu v absolutním omezení.
Testovací postel však není specifická pouze pro vývojový tým. Z pohledu testovacího týmu nebo testera, protože testovací postel není nic jiného než platforma určená pro testování softwaru / produktu, se také zaměnitelně nazývá testovací prostředí.
Jakékoli testovací zařízení nebo testovací prostředí by musely být nakonfigurovány v souladu s určeným cílem testu pro testovanou aplikaci / produkt / software. V určitých situacích by testovací lože bylo porovnáváním testovacího prostředí a testovacích dat, se kterými pracuje.
Součásti testovacího prostředí
Jakýkoli test by měl své specifické požadavky na testovací prostředí, ale ve velmi širokém smyslu bude jakékoli testovací prostředí / testovací prostředí obsahovat hardware, software a síťové prvky, které podporují požadovanou konfiguraci na minimum pro řízení a provádění konkrétního testu .
Je dobře známou skutečností, že přiměřené množství času testeru spotřebovávají problémy s životním prostředím, které zase ovlivňují produktivitu a plány testů. Ačkoli se typ výzev u každého testovacího týmu liší, některé mohou být běžné.
Některé klíčové výzvy, kterým běžně čelíme, jsou:
# 1) Vzdálené prostředí
Testovací prostředky nebo prostředí jsou většinou umístěna geograficky na webech, které jsou vzdálené týmům. Toto je jedna z nejčastěji se vyskytujících výzev pro testovací týmy, jako v případě jakýchkoli problémů, které mohou nastat v souvislosti s hardwarem, firmwarem, softwarem, sítí atd.
Týmy spotřebovávající aktiva by se musely velmi spoléhat na podpůrné týmy v místě, kde jsou aktiva přítomna.
Ve stejných řádcích, pokud některé aktivum vyžaduje aktualizaci firmwaru nebo aktualizaci sestavení, může testovací tým opět potřebovat podporu týmů podpory, které vlastní prostředí, otevřením lístků podpory. To může také zvýšit značnou dobu testování a zpoždění plánů, zejména v případech rozdílů v časových pásmech.
# 2) Kombinované využití mezi týmy
Vývojové a testovací týmy nejčastěji používají stejné prostředky prostředí. I když obecná norma definuje, že vývojové, testovací a produkční prostředí musí být oddělené, ve skutečnosti je tohoto ideálního scénáře dosaženo velmi zřídka. Organizace se stávají extrémně nepřátelskými k obstarávání samostatných zdrojů pro každý tým.
Proto většina organizací nařizuje společné používání prostředí mezi vývojem a testováním. Přidáno k tomu, pokud vývojové a testovací prostředky bojují o použití stejných aktiv současně, vede to k chaosu a neshodám uvnitř členů.
# 3) Neúčinné plánování využití zdrojů pro integraci
V některých případech pro scénáře, které vyžadují end-to-end testování přičemž existuje integrace dvou nebo více komponent, které mají fungovat společně, opět může existovat požadavek na společné využití prostředků mezi testovacími týmy. Neefektivní plánování s ohledem na využití kromě konfliktů mezi týmy významně přispívá k nestabilitě prostředí.
Nejviditelnějším účinkem je to, že problém, který je zaznamenán u konkrétního jednou nebo dvakrát, může v následujících bězích pro stejný scénář způsobit zcela odlišné chování. Pokud je vada již otevřená, existuje vysoká šance, že ji vývoj nepřijme jako platného kandidáta na opravu.
# 4) Konfigurace komplexního testu
Konfigurace testovacího prostředí nebo testovacího prostředí je někdy příliš složitá. To bude představovat několik výzev, protože testovací tým bude potřebovat potřebné dovednosti, aby porozuměl potřebným konfiguracím. Tester někdy nemá k dispozici znalostní bázi, aby mohl přijít s požadovanou konfigurací.
V takových případech mohou testeři sami způsobit chybu na zkušebním zařízení nesprávnou konfigurací. To by výrazně ovlivnilo testovací případ a výsledky, které přináší.
# 5) Vypracujte čas nastavení
V určitých jiných dobách může být nastavení testu pro každý identifikovaný testovací případ příliš komplikované. Může to být způsobeno širokou škálou současně existujících technologií, které je třeba spojit dohromady, nebo více komponentami, aby společně fungovaly v případech testování integrace.
V těchto případech musí každá ze složek fungovat perfektně, aby zajistila konzistentní výsledky, protože jedna součást může tvořit vstup pro další.
Osvědčené postupy pro nastavení testovacího prostředí
Podívali jsme se na široký přehled výzev, kterým tester čelí před zahájením provádění testu nebo v jeho průběhu. Většina z nás čelila jednomu nebo více z těchto problémů v určitém okamžiku během milníků projektu. Tyto výzvy existovaly a pravděpodobně budou i nadále existovat v různé míře, protože idealistická situace neexistuje.
Vzhledem k tomu, že problémy s nastavením jsou nedílnou součástí práce testera a jsou nevyhnutelné, zde je několik návrhů, jak efektivně připravit nastavení pro testování. To by mohlo pomoci minimalizovat vady, které mohou pocházet z problémů s nastavením.
Tip č. 1) Pochopit Důkladně otestujte požadavky a vzdělávejte se
jaký program otevře soubor json
Vždy začněte se základy a s tím nejviditelnějším! Když vývojový tým zavede dokument se specifikacemi nebo dokument o případu použití, neměnným krokem pro testovací tým je pochopit požadavky řádkové položky a poté připravit dokument testovacího případu s podrobnostmi testovacích případů.
Zatímco probíhá testování, je to tak nejlepší praxe zahrnout do dokumentu testovacího případu také podrobné informace o testovacím prostředí. Žádná domněnka, že tester poté stráví nějaký čas analýzou toho, jaké testovací prostředí může být požadováno, a odpovídajícím způsobem potřebné konfigurace.
Toho lze dosáhnout rozhovorem s vývojovým týmem / architekty za účelem vybudování dobré znalostní základny. To by nejen ušetřilo nějaký čas v prováděcím cyklu, ale také to pomůže testerovi efektivně alokovat jeho čas provedení mezi jednoduché a složité testy.
Osobně je dobrým výsledkem to, že mnozí z nás objevili problémy s nastavením (které by neodmyslitelně bránily konzistentnímu provádění testu) na samém začátku cyklu, což nám poskytlo čas na usměrnění a získání potřebné pomoci k vyřešení těchto problémů - tedy neprodlužování zkušebního cyklu nad nepřijatelné období.
Dalším pozitivním dopadem, který by to mělo, je to, že by se tím výrazně zlepšily znalosti testovacího týmu a zabránilo by se zbytečným závadám. Ačkoli tato praxe shrnuje téměř všechny postupy, které jsou neodmyslitelně nutné pro zvládnutí výše zmíněných výzev k nastavení testů, stále stojí za zmínku o dalších tipech.
Tip č. 2) Kontrola připojení
Dalším nejdůležitějším kontrolním bodem je zajistit, aby prostředky nebo prostředky, které chcete použít k testování, byly dosažitelné. V případě, že je třeba systém provozovat integrovaný s jinými stroji, zkontrolujte jejich vzájemné propojení pomocí příkazu ping nebo telnet.
Také v případě, že systémy potřebují vzájemně komunikovat a jsou za branami firewall, ujistěte se, že se mohou ověřovat prostřednictvím těchto bran firewall pomocí základních možností zabezpečení (BSO) a zkontrolujte také případné proxy. V případě, že si všimnete, že některé stroje nejsou dosažitelné nebo vyžadují autentizaci BSO, lze vznést příslušné servisní požadavky, aby splnily požadavek na tým podpory.
To je zvláště užitečné, když je prostředí ve vzdálených lokalitách a také se vyhnete eskalaci vzhledem ke strojům a systémům. V případě, že testovací tým vyžaduje přístup k jakémukoli prostředku nebo úložišti, pomohlo by to proaktivně určit to samé.
Tip č. 3)Kontrola sítě a / nebo úložiště
Jedná se téměř o rozšíření předchozího tipu a bylo by potřeba ještě další kontroly s větší technickou hloubkou. Ujistěte se, že testování, které požadujete, má potřebnou šířku pásma a zda vaše testování vyžaduje připojení k internetu. Nezapomeňte také najít způsob, jak ověřit, že topologie sítě mezi systémy a prostředky je správná.
Za druhé, pokud váš testovací cíl naznačuje potřebu jakéhokoli úložiště, ujistěte se, že existuje úložiště a síťové připojení. Většinou je odpovědností administrátora, aby to měl zavedené, ale je také velkou přidanou hodnotou, mít stejné pracovní a funkční znalosti.
Tip č. 4) Zkontrolujte požadovaný hardware a software, licence
Mnohokrát se stane, že testeři začnou provádět v systémech, aniž by zkontrolovali potřebný hardware a software, který může být vyžadován. V důsledku toho si tester téměř během testovacího cyklu uvědomuje, že určité funkce jsou k dispozici pouze na vyšší úrovni hardwaru nebo softwaru / firmwaru.
V té době tester nahlásí blokátora ve svém testovacím úsilí, které jí zabere značnou dobu testování. Proto je neocenitelnou praxí mít kontrolní bod, který by si poznamenal hardware a software, který je dříve nutný.
Mnohokrát může dojít k výpadku při upgradu hardwaru / softwaru, na který vše spadá Tip 1 kde tester musí zapojit do proaktivního plánování týkajícího se hardwaru. Některý software může vyžadovat licence, které mohou vyžadovat schválení a kroky právního týmu. Jelikož jde o akci řízenou procesem, může opět trvat několik dní, než bude splněna, což je třeba naplánovat.
Tip č. 5)Prohlížeče a verze
Testování, které provádíte, se musí zrcadlit co bude koncový uživatel provádět . Mohl testovat na konkrétním prohlížeči na nejnovějších verzích všech prohlížečů. Proto je povinné identifikovat různé druhy prohlížečů, které by se používaly k testování, a nechat si je nainstalovat ve vašem místním nastavení testu.
Zadruhé také identifikujte, jaké verze prohlížečů je třeba pro testování použít. Dobrým postupem by bylo začít s prohlížečem nižší verze, čímž by byla zajištěna zpětná kompatibilita, a poté upgradovat na nejnovější verzi.
Tip č. 6)Plánování využití testovacího prostředí.
Vzhledem k tomu, že testovací tým nikdy nebude mít situaci, kdy bude mít své vlastní testovací zdroje, systémy a aktiva - je jedním z hlavních milníků v plánování testů efektivní využívání testovacích zdrojů.
jak otevřít soubor .jar pomocí Java
To je zvláště nutné, když více než jeden tým musí přistupovat ke stejné sadě zdrojů buď z důvodu komplexního scénáře, který zahrnuje dvě nebo více složek spolupracujících, nebo situace, kdy je nastavení testu příliš komplikované nebo složité na to, aby bylo možné jej replikovat. velmi snadno a ve stejném týmu může být více členů, kteří mají své vlastní testovací cíle se stejným nastavením.
Dobrým postupem by bylo vypracovat přístup sdílení času, kdy ho určitý tým nebo osoba použije pro dřívější polovinu a zbývající lidé pro druhou polovinu. Někdy mezi tím může být běžné, že každý z nich může spustit nezávislé testy, které nebudou bránit tomu druhému.
Tímto způsobem nejen snížíte chaos a konflikty uvnitř členů, ale také zajistíte behaviorální stabilitu prostředí po delší dobu.
Tip č. 7)Automatizační nástroje a jejich konfigurace
Jak víme, každá řádková položka v testování bude mít několik opakovaných testů, které budou součástí regresního cyklu, který bude nutné automatizovat. Testovací tým musí určit, jaký druh automatizace by chtěl provést, a potřebné nástroje.
I když to nutné nemusí být součástí přípravy prostředí, přesto bych to uvedl jako osvědčený postup, aby byly automatizační nástroje identifikovány a odpovídajícím způsobem nakonfigurovány. To by zcela záviselo na uvážení testujícího, když chce tuto činnost provádět, protože to není povinný faktor pro zajištění připravenosti testu.
Závěr
Tyto tipy a triky mohou být dobrým měřítkem a stopou, aby byla zajištěna připravenost testovacího prostředí pro testování. Každý tým nepochybně čelí své vlastní jedinečné sadě výzev a výše uvedené tipy lze přizpůsobit a přizpůsobit tak, aby vyhovovaly jejich vlastním potřebám.
Ve skutečnosti zdroj pro zaznamenávání celé této kostry tipů pochází z jednoho z mých úkolů, kde jsem čelil vážně složitým problémům s nastavením a trvalo mi téměř rok, než jsem dokonce začal testovat!
Ačkoli omezení v testovacím prostředí byla mimo moji kontrolu, cítil jsem, že mnoho z těchto problémů mohlo být nahlášeno dříve, kdybych použil tyto tipy. Od té doby ji používám pro každý úkol, který mi přijde do cesty, a tato kostra mi hodně pomohla při proaktivním hledání problémů s nastavením a směřování mého úsilí k jejich vyřešení.
O autorovi: Tento článek napsal Sneha Nadig. Pracuje jako testovací vedoucí s více než 7 lety zkušeností v ručních a automatizačních testovacích projektech.
V části 2 tohoto článku uvidíme proces nastavení a údržby testovacího prostředí a tipy na přípravu a správu testovacích dat. Mezitím můžete v komentářích zveřejnit své dotazy ohledně přípravy na testovací postel.
Doporučené čtení
- Jak efektivně provádět testování po vydání a minimalizovat dopad vydání na živé klienty
- Jak rozhodnete, které vady jsou přijatelné pro uvedení softwaru do provozu?
- Jak připravit a doručit týmu vynikající prezentaci testování kvality
- Proces správy defektů: Jak efektivně spravovat defekty
- 9 nejlepších nápadů pro testery, jak efektivně využít svůj čas na lavičce
- Vedení v testování - Odpovědnosti testovacích vedoucích a jak efektivně řídit testovací tým
- Jak efektivně plánovat a spravovat testovací projekty (tipy)
- Proces defektního třídění a způsoby řešení schůzky defektního třídění