test data management concept
V minulom návode sme sa zamerali na ako pripraviť testovacie zariadenie tak, aby sa minimalizovali chyby testovacieho prostredia . V pokračovaní toho istého tutoriálu sa dnes dozvieme ako nastaviť a udržiavať testovacie prostredie a dôležitéSpráva testovacích údajovtechniky.
Proces nastavenia testovacieho prostredia
Najdôležitejším faktorom pre testovacie prostredie je jeho replikácia čo najbližšie k prostrediu koncového používateľa. Konečne sa od koncových používateľov neočakáva, že by vykonali akúkoľvek konfiguráciu alebo inštaláciu, pretože sa im dodáva kompletný produkt alebo systém. Preto tým túto definíciu ani testovacie tímy nemusia výslovne vykonávať.
Ak je akákoľvek takáto konfigurácia nevyhnutná iba na účely testovania (bude však nakonfigurovaná pre koncových používateľov), je potrebné identifikovať správcov. Tí správcovia, ktorí konfigurujú vývojové prostredie, musia byť rovnakí ľudia, ktorí konfigurujú testovacie prostredie.
Ak vývojový tím sám prevezme iniciatívu v inštalácii / konfigurácii, musí im pomôcť urobiť to isté aj v testovacom prostredí.
Napríklad, ak musíte otestovať aplikáciu (s jej pridruženým middlewarom, ktorý sa má nainštalovať a nakonfigurovať) v systéme naprieč rôznymi platformami OS atď. - najlepším spôsobom, ako to vyriešiť, je použitie virtualizačné alebo cloudové prostredia .
Majte hlavný systém, v ktorom sú všetky aplikácie a potrebný middleware správne nainštalované a nakonfigurované. Potom urobte z tohto systému hlavný obraz jeho zachytením a klonujte niekoľko inštancií z rovnakého obrázka tak, aby mal každý používateľ pocit, že má vyhradený systém s testovanou aplikáciou.
Tu je obrázkové znázornenie toho, čo by proces testovacieho prostredia obnášal:
Proces nastavenia testovacieho prostredia
Čo sa dozviete:
Údržba testovacieho prostredia
Toľko povedané o príprave testovacieho prostredia, aj keď je to náročné, je to nepochybne viac ako dôvod vyžadujúci údržbu alebo štandardizáciu testovacieho prostredia. Mnohokrát tester stratí čas na testovanie kvôli problémom s prostredím alebo nastavením.
S rýchlym nárastom operačných systémov a škály hardvéru a softvéru musí byť prostredie takmer dynamické, aby bolo možné vyhovieť potrebám. Testovacie tímy môžu zabezpečiť, že dodávajú vysokokvalitný produkt s dobrým procesom riadenia testov, čo by pomohlo pri optimálnom využívaní zdrojov, ktoré sú obmedzené.
Kľúčové ukazovatele na zabezpečenie efektívnej údržby testovacieho prostredia
Ako testovacie prostredia väčšinou obsahujú heterogénne platformy a zásobníky. Ďalej uvádzame niektoré kľúčové ukazovatele, ktoré zaisťujú efektívnu údržbu testovacieho prostredia.
# 1) Efektívne zdieľanie a distribúcia prostredia:
Ako už bolo spomenuté vyššie, jednou z kľúčových výziev prípravy testovacieho prostredia je, že veľa tímov alebo ľudí potrebuje na svoje testovacie účely rovnakú sadu zdrojov. Preto je potrebné vyvinúť vhodný mechanizmus zdieľania, ktorý uspokojí potreby všetkých tímov a ľudí bez toho, aby sa zdržali plány.
To sa dá dosiahnuť udržiavaním úložiska alebo informačného odkazu, kde sú všetky údaje týkajúce sa:
- kto využíva prostredie,
- - keď je životné prostredie voľné na použitie a -
- ako je rozdelenie času využitia prostredia zadané presne.
Proaktívnym určením potreby veľkých zdrojov oproti ich obmedzenej dostupnosti sa automaticky zruší veľké množstvo chaosu.
Druhým aspektom je prehodnotenie požiadaviek na zdroje jednotlivých tímov testovací cyklus a hľadať, ktoré zdroje nie sú veľmi využívané. Analyzujte, či je možné tieto konkrétne zdroje nahradiť akýmikoľvek novými zdrojmi alebo systémami, ktoré môžu byť potrebné.
# 2) Šekové príkazy:
Niektoré požiadavky na test vyžadujú komplexné nastavenie testu alebo nastavenie, ktoré zahŕňa zložité kroky, ktoré sú náročné na čas. Toto je konkrétne prípad počas komplexné testovanie ktorá zahŕňa dve alebo viac zložiek na spoluprácu. Preto môže byť potrebné, aby rovnaké tímové prostredie opakovane používalo viac tímov.
V takýchto prípadoch bude dobré porozumenie celého prostredia ako celku a porovnanie toho, aké testy vykonávajú rôzne tímy, kvalitným obrazom, ktorý pomôže poskytnúť tieto konkrétne zdroje príslušným tímom.
Vzhľadom na vyššie uvedené faktory - je možné vykonať základné testovanie prípustnosti, ktoré pomôže pri urýchlení testov pre jednotlivé tímy alebo ich okamžite upozorní, ak musí prostredie v dôsledku týchto kontrol prípustnosti podstúpiť nejaké zmeny alebo opravy.
# 3) Sledovanie prípadných výpadkov:
Tak ako každý tím, ktorý vlastní testovacie prostredie, má svoje, aj organizácia má všetky možné testovacie prostredia udržiavané globálnym tímom podpory.
Rovnako ako tímy, ktoré vlastnia ich testovacie prostredie, majú svoj vlastný lokálny výpadok v prípade akýchkoľvek aktualizácií firmvéru alebo softvéru, globálne tímy musia tiež zabezpečiť, aby všetky prostredia dodržiavali najnovšie štandardy, ktoré môžu zahŕňať výpadky napájania alebo siete.
Tí, ktorí udržiavajú testovacie prostredie, musia preto sledovať všetky takéto výpadky, ktoré sa môžu vyskytnúť, a vopred informovať testovací tím, aby podľa toho plánovali svoju prácu.
# 4) Virtualizujte všade, kde je to možné:
To je opäť veľmi dôležité tam, kde je potrebné vykonať testovanie zdieľania prostredia, a je nevyhnutne potrebné optimalizovať zdroje. V takýchto časoch je odpoveďou použitie virtualizovaného prostredia, napríklad cloudu, na testovacie účely.
Pri použití takého prostredia musia všetci testeri urobiť, je poskytnúť okamžitú inštanciu a táto inštancia po vytvorení vytvorí nezávislé Testovacie lôžko alebo testovacie prostredie obsahujúce všetky rôzne zdroje, ako je vyhradený rámec pre OS, databázu, middlevér, automatizáciu , atď. potrebné na testovanie.
Po ukončení testovania môžu byť tieto inštancie zničené, čím sa výrazne znížia náklady organizácie. Cloudové prostredia sú obzvlášť užitočné na testovanie funkčného overenia, automatizáciu testovacích oblastí.
# 5) Regresné testovanie / automatizácia:
rozdiel medzi testovacím scenárom a testovacím prípadom
Keď sa vyvinú nové funkcie a funkcie, regresné testy je potrebné vykonať pre tieto funkcie pre každý uvoľňovací cyklus. Aj keď sa teda zdá, že testovacie prostredia pre regresné testovanie zozadu fungujú na rovnakom testovacom nastavení s rovnakými údajmi, v skutočnosti neustále vyvíjajú každé vydanie v súlade s implementovanými funkciami.
Každý cyklus uvedenia produktu na trh by mal jedno alebo viac kôl regresného testovania. Teda vytvorenie regresných testovacích prostredí pre každý cyklus uvoľňovania produktu a ich opätovné použitie v rámci cyklu by určite vykreslilo stabilitu testovacieho prostredia.
Vývoj automatizačných rámcov a použitie automatizácie pre regresné testy tiež pomáha pri zvyšovaní efektívnosti testovacieho prostredia, pretože automatizácia bude predpokladať, že prostredie je stabilné a vzniknuté chyby sú čisto orientované na jednotlivé znaky / kódy.
# 6) Všeobecné riadenie:
Ak sa vyskytnú problémy s hardvérom alebo softvérom testovacieho prostredia, musia byť tieto problémy nasmerované na správnych ľudí, ktorí zabezpečia opravy, ak ich nemôžu opraviť interne pracovníci údržby.
Napríklad, Ak akékoľvek testovanie spôsobí chybu, ktorá spočíva v obmedzení firmvéru alebo softvéru, ktorý sa používa v súčasnom prostredí, spravidla to nemôžu vyriešiť iba osoby zodpovedné za údržbu prostredia.
Spotrebiteľ (ktorý je v tomto prípade testerom) musí byť požiadaný, aby predložil príslušné požiadavky na službu. Tieto musia byť nasmerované na príslušného dodávateľa alebo tím a musí sa s nimi pravidelne robiť koordinácia, aby sa zabezpečilo, že budúca verzia bude zodpovedať konkrétnemu problému.
Ďalším aspektom riadenia by bolo občasné poskytovanie podrobných správ o prostredí vedeniu alebo zainteresovaným stranám, čo pomáha pri dosahovaní transparentnosti a predstavuje dobrý základ pre každú analýzu.
Príprava testovacích údajov
Poďme sa teraz pozrieť na druhú časť a Vytvorenie testovacieho lôžka - ktoré zahŕňa nastavenie testovacích údajov . Ak sa o testovacom prostredí povie taký veľký kus, dá sa pomocou testovacích údajov merať skutočná podstata testovacieho prostredia, jeho robustnosť a účinnosť. Podľa definície sú testovacie dáta akýkoľvek druh vstupu poskytovaného testovanému softvérovému kódu.
Aj napriek tomu, že navrhovaniu testovacích prípadov venujeme dostatok času, sú dôležité údaje z testovacích údajov, pretože zaisťujú úplné pokrytie testovania pre všetky typy scenárov, čím sa zvyšuje kvalita. Mohli by byť nejaké údaje z testu, ktoré sú potrebné pre akékoľvek šťastné alebo pozitívne testovanie cesty.
Niektoré ďalšie údaje by mohli byť navrhnuté na chyby alebo negatívne testy, čo je veľmi užitočné pri zisťovaní výkonnosti aplikácie v neobvyklých situáciách.
Testovacie údaje sa spravidla vytvárajú pred začiatkom vykonávania textu, pretože každé testovacie prostredie má svoju vlastnú skupinu zložitostí, alebo príprava samotných údajov môže byť zdĺhavým procesom. Všeobecne teda môžu byť zdrojmi testovacích údajov interný vývojový tím alebo koncoví používatelia, ktorí kód alebo funkciu spotrebúvajú.
Napríklad,Funkčné testovanie
Uveďme si príklad, kde je potrebné vykonať funkčné testovanie alebo testovanie čiernej skrinky. Cieľom je, aby kód funkčne spĺňal špecifikované požiadavky.
V takýchto prípadoch by teda príprava testovacích prípadov mala všeobecne pokrývať tieto druhy údajov:
- Pozitívne údaje o ceste: S referenčným dokumentom prípadu použitia vývoja sú to údaje všeobecne synchronizované s vykonávaním scenárov pozitívnej cesty.
- Údaje o negatívnej ceste: Toto sú údaje, ktoré sa všeobecne považujú za „neplatné“, pokiaľ ide o správne funkčné fungovanie kódu.
- Nulové údaje: Ak aplikácia alebo kód tieto údaje očakáva, neposkytujú žiadne údaje.
- Chybné údaje: Určenie výkonu kódu, keď sú údaje poskytované v nelegálnom formáte.
- Údaje o okrajových podmienkach: Testovaním údajov dodávaných z indexu alebo poľa určte výkonnosť kódu.
Testovacie údaje zohrávajú kľúčovú úlohu pri identifikácii toho, kde sa môže produkt alebo funkcia úplne zlomiť. Vždy si osvojte prax dotazovania a overovania typu údajov dodávaných do testovacieho prostredia v rôznych fázach testovania.
Správa testovacích údajov
Keď testovacie údaje zohrávajú tak dôležitú úlohu pri zabezpečovaní kvality produktu, je rozumné tvrdiť, že ich správa a racionalizácia zohrávajú rovnako dôležitú úlohu pri zabezpečovaní kvality každého produktu, ktorý sa musí vydať zákazníkom.
Potreba správy testovacích údajov a osvedčené postupy:
# 1) Veľký počet organizácií má rýchlo sa meniace obchodné ciele uspokojovať potreby koncových používateľov, a preto je zbytočné pripomínať, že príslušné údaje z testov slúžia pri určovaní kvality testovania. Bude to zahŕňať nastavenie presného druhu údajov pre príslušné testovacie prostredia a sledovanie vzorcov správania.
Ako už bolo uvedené, veľká časť času testovacieho tímu sa vynakladá na plánovanie testovacích údajov a s nimi súvisiace úlohy. Mnohokrát býva testovanie akejkoľvek funkcionality veľmi sťažené z dôvodu nedostupnosti vhodných testovacích údajov, čo predstavuje zásadnú výzvu z hľadiska úplného pokrytia testovaním.
#dva) Niekedy tiež pre určité testovacie požiadavky údaje o teste je potrebné neustále obnovovať . To samo o sebe spôsobuje veľké oneskorenie v cykle z dôvodu neustáleho prepracovávania, ktoré tiež zvyšuje náklady na aplikáciu, ktorá sa dostane na trh.
V určitých iných časoch, ak má produkt, ktorý sa dodáva, zapojenie do rôznych jednotiek pracovných skupín vo veľkej organizácii, vyžaduje vytvorenie a obnovenie údajov o testoch zložitú úroveň koordinácie medzi týmito pracovnými skupinami.
# 3) Aj keď testovacie tímy musia vytvárať všetky druhy dát, ktoré sú možné na zabezpečenie adekvátneho testovania, organizácie musia tiež brať do úvahy, že to znamená, že všetky druhy dát je potrebné ukladať do nejakého druhu úložiska.
Aj keď mať úložisko je dobrá prax, ukladanie nadmerných a nežiaduce údaje by nielen významne zväčšil úložný priestor na ukladanie týchto veľkých častí dát, ale tiež by sťažil načítanie vhodných údajov pre príslušné testovanie, ak neexistuje žiadna údržba verzií a archivácia tohto úložiska.
Väčšina organizácií vo všeobecnosti čelí týmto spoločným výzvam, pokiaľ ide o údaje z testov. Preto je potrebné zaviesť určité stratégie riadenia, ktoré minimalizujú stupeň týchto výziev.
Ďalej uvádzame niektoré navrhované metodiky správy údajov o teste, ktoré zodpovedajú potrebám testovania. Nasledujúce postupy sú veľmi základné a všeobecné, ktoré budú bežne fungovať pre väčšinu organizácií. To, ako sa prijme, je výhradne na zvážení príslušných organizácií.
Testovanie stratégií správy údajov
# 1) Analýza údajov
Všeobecne sú testovacie údaje zostavované na základe testovacích prípadov, ktoré sa majú vykonať. Napríklad v tíme pre testovanie systému je scenár úplného konca je potrebné identifikovať, na základe ktorých sú navrhnuté údaje o teste. To môže zahŕňať fungovanie jednej alebo viacerých aplikácií.
Povedzme v produkte, ktorý spravuje pracovné zaťaženie - zahŕňa aplikáciu radiča správy, aplikácie middleware a databázové aplikácie, aby fungovali vo vzájomnom vzťahu. Požadované testovacie údaje pre rovnaké údaje by mohli byť rozptýlené. Na zabezpečenie efektívneho riadenia je potrebné vykonať dôkladnú analýzu všetkých rôznych druhov údajov, ktoré môžu byť potrebné.
# 2) Nastavenie údajov na zrkadlenie produkčného prostredia
Toto je vo všeobecnosti rozšírenie z predchádzajúceho kroku a umožňuje pochopiť, aký bude scenár koncového používateľa alebo produkcie a aké údaje sú preň potrebné. Použite tieto údaje a porovnajte ich s údajmi, ktoré v súčasnosti existujú v aktuálnom testovacom prostredí. Na základe tohto bude možno potrebné vytvoriť alebo upraviť nové údaje.
# 3) Stanovenie vyčistenia testovacích údajov
Na základe požiadaviek na testovanie v súčasnom cykle vydania (kde cyklus vydania môže trvať dlho) bude pravdepodobne potrebné zmeniť alebo vytvoriť údaje o teste, ako je uvedené v predchádzajúcom bode. Tieto údaje zo skúšky, aj keď nie sú okamžite relevantné, môžu byť požadované neskôr. Preto by mal byť formulovaný jasný proces, ktorý predpokladá, že je možné údaje o teste vyčistiť.
# 4) Identifikujte citlivé údaje a chráňte ich
Na správne otestovanie aplikácií môže byť mnohokrát potrebné veľké množstvo veľmi citlivých údajov. Napríklad, cloudové testovacie prostredie je populárnou voľbou, pretože umožňuje testovanie rôznych produktov na požiadanie.
Niečo také základné ako zaručenie súkromia používateľov v cloude však vyvoláva obavy. Takže najmä v prípadoch, keď budeme musieť replikovať užívateľské prostredie, musí byť identifikovaný mechanizmus na ochranu citlivých údajov. Mechanizmus je do veľkej miery riadený objemom použitých údajov o teste.
# 5) Automatizácia
Rovnako ako prijímame automatizáciu na vykonávanie opakovaných testov alebo na vykonávanie rovnakých testov s rôznymi druhmi údajov, je tiež možné automatizovať vytváranie testovacích údajov. To by pomohlo odhaliť chyby, ktoré sa môžu vyskytnúť v súvislosti s údajmi počas testovania. Možným spôsobom, ako to dosiahnuť, je porovnanie výsledkov, ktoré sú výsledkom súboru údajov z po sebe nasledujúcich testovacích behov. Ďalej automatizujte tento proces porovnávania.
# 6) Efektívne obnovenie údajov pomocou centrálneho úložiska
Toto sú zďaleka najdôležitejšie metodiky a tvoria jadro implementácie správy údajov. Všetky vyššie uvedené body, najmä tie, ktoré sa týkajú nastavenia údajov, vyčistenia údajov, s tým priamo alebo nepriamo súvisia.
Veľa úsilia pri vytváraní testovacích údajov je možné ušetriť udržiavaním centrálneho úložiska, ktoré obsahuje všetky druhy údajov, ktoré môžu byť potrebné pre rôzne druhy testovania. Ako sa to deje? V po sebe idúcich testovacích cykloch skontrolujte buď pre nový testovací prípad, alebo pre upravený testovací prípad, či údaje existujú v úložisku. Ak neexistujú, najskôr vložte tieto údaje do testovacieho prostredia.
Ďalej to môže byť nasmerované do tohto úložiska pre ďalšie použitie. Teraz pre cykly postupného uvoľňovania môže testovací tím použiť všetky alebo podmnožinu týchto údajov. Nie je výhoda veľmi zrejmá? V závislosti na množinách údajov, ktoré sa často používajú, je možné zastarané údaje ľahko vylúčiť, a zabezpečiť tak, aby boli vždy k dispozícii správne údaje, čím sa znížia náklady na ukladanie nepotrebných údajov.
Po druhé, môžete mať tiež uložených niekoľko verzií tohto úložiska alebo ich môžete podľa potreby upraviť. Používanie rôznych verzií úložiska môže pri regresnom testovaní výrazne pomôcť pri identifikácii toho, čo môže zmena údajov spôsobiť rozbitie kódu.
Záver
Testovacie prostredie by malo mať prvoradý význam v každom testovacom tíme. Každý cyklus vydávania prinesie celý rad nových výziev v boji s nespoľahlivým a neplánovaným testovacím prostredím.
Ako revolučné opatrenie teraz mnoho organizácií zavádza stratégie, ako je vytváranie špecializovaných tímov údržby testovacieho prostredia, ktoré vytvárajú určité rámce pre efektívnu údržbu testovacích prostredí, aby zabezpečili plynulejšie cykly uvoľňovania.
Vylepšené testovanie je iba zjavným účinkom racionalizácie správy testovacích údajov. Jeho kľúčovou podstatou je zabezpečenie nákladovo efektívneho riešenia pre organizácie bez kompromisov v oblasti spoľahlivosti produktu.
Dajte nám vedieť, ako spravujete svoje testovacie prostredie a ako pripravujete testovacie dáta? Chcete pridať nejaké tipy?
Odporúčané čítanie
- Najlepšie 14 NAJLEPŠÍCH nástrojov na správu údajov o testoch v roku 2021
- 10 najlepších nástrojov na analýzu údajov pre dokonalú správu údajov (ZOZNAM 2021)
- Výukový program pre správu testov: Sprievodca testovaním správy
- Čo sú údaje z testu? Testujte techniky prípravy dát s príkladom
- Funkcia údajového fondu v IBM Rational Quality Manager pre správu testovacích údajov
- Vytváranie rámca selénu a prístup k testovacím údajom z Excelu - Výučba selénu č. 21
- Testovanie generovania údajov pomocou online nástroja GEDIS Studio (2. časť)