top 10 test automation strategies
Toto je poslední článek v série automatizace testů . Tento článek shrnuje osvědčené postupy a strategie provádění automatizace testů.
Přestože naše předchozí články zmiňují osvědčené postupy (a některé z nich se zde mohou opakovat), měl jsem pocit, že bych měl vyjmenovat několik, ale nejdůležitější osvědčené postupy automatizace zde v jednom článku pro referenci .
Tyto strategie jsou převzaty z mé vlastní zkušenosti a z literatury testovacích guru jako Michael Bolton, James Bach a Cem Kaner. Tyto postupy by se měly dodržovat v každém automatizačním projektu.
anime stránky ke sledování anime zdarma
Co se naučíte:
- 10 nejlepších strategií a postupů automatizace testů
- # 1. Najměte si vyhrazeného inženýra nebo tým pro automatizaci
- # 2. Automatizační nástroj je důležitý, ale není řešením všeho
- # 3. Vyberte automatizační nástroj, který je známý vašim zdrojům
- # 4. Znát testovanou aplikaci
- # 5. Dobrá automatizace znamená dobrý manuální testovací případ
- # 6. Identifikujte příležitosti pomocí automatizace
- # 7. Nelze vše automatizovat
- # 8. Vyhněte se automatizaci grafického uživatelského rozhraní, pokud je k dispozici alternativní
- # 9. Používejte automatizaci i pro další užitečné účely
- # 10. Automatizace je vývoj softwaru
- Závěr
- Doporučené čtení
10 nejlepších strategií a postupů automatizace testů
Tady jsme..
# 1. Najměte si vyhrazeného inženýra nebo tým pro automatizaci
To je základní věc. Nepožádejte své manuální testery, aby si dopřáli automatizaci testů. Pokud chcete, aby prováděli automatizaci testů, osvobozte je od manuálních testovacích prací. Automatizace testů je práce na plný úvazek. K tomu potřebujete vyhrazené zdroje.
Doporučuji vybudovat tým automatizace testů složený z alespoň jednoho automatizačního architekta. Můžete si najmout několik techniků automatizace, kteří budou pracovat pod vedením architekta automatizace testů. Počet techniků automatizace závisí na počtu a velikosti vašich produktů.
# 2. Automatizační nástroj je důležitý, ale není řešením všeho
Mluvili jsme o výběru nástrojů . Ale výběr správného nástroje je jen začátek. Někteří manažeři mají mylnou představu, že pokud si vyberou správný nástroj, mohou snadno cokoli zautomatizovat. Pozor, automatizační nástroje vám nedávají všechno. Ulehčují proces. K dokončení procesu však potřebujete kvalifikované zdroje.
Automatizační nástroje jsou často chybné a zasekly se v identifikaci složitých objektů v aplikaci. Zdroje, které si najmete, pokud jsou kvalifikované, přijdou s řešením, které proces posune vpřed. Jinak, pokud si nenajmete dobré zdroje, samotný nástroj nemůže zaručit úspěšnou automatizaci.
# 3. Vyberte automatizační nástroj, který je známý vašim zdrojům
Pokud vaše prostředky znají C # a vaše aplikace, která má být testována, je také vyvinuta v C #, pak nemá smysl vybírat nástroj, který nenabízí C # pro psaní skriptů.
Výuka jazyků je proces zabývající se časem. Vyhněte se této křivce učení zakoupením nástroje, který nabízí minimální křivku učení.
# 4. Znát testovanou aplikaci
Výběr nástroje do značné míry závisí na technologiích použitých ve vašem produktu. Před spuštěním automatizace poznejte svůj produkt naruby.
Pokud se jedná o webovou aplikaci, znáte prohlížeče, které bude podporovat. Znát technologie, které se v něm používají. Pokud se jedná o desktopovou aplikaci, zjistěte, na kterém jazyce je stavěn. Jaké ovládací prvky třetích stran se v aplikaci používají. To vám pomůže usnadnit výběr nástrojů a budoucí automatizaci.
# 5. Dobrá automatizace znamená dobrý manuální testovací případ
Pěkně napsané silné manuální testovací případy zachraňte nás před automatizací těch testovacích případů, které se snadno automatizují, ale slabé při hledání závad.
Zde je citát z knihy Lessons Learned in Software Testing:
'Automatizace bez dobrého návrhu testu může vést k velké aktivitě, ale malé hodnotě.'
Vždy je vhodné nejprve napsat testovací případ v manuální podobě. Určete všechny předpoklady a data testu . Napište kroky jasným způsobem a před každý krok napište očekávané výsledky. Cíl jednoho testovacího případu by měl být jasný a měl by být méně závislý na ostatních testovacích případech. Automatizační inženýři by měli tento testovací případ spustit alespoň jednou, aby jasně rozhodli, jaké objekty je třeba identifikovat a jaký bude tok navigace. Zeptejte se ručních testerů.
Tato aktivita někdy pomáhá identifikovat chyby ještě předtím, než je napsán automatizační skript. Odborníci tvrdí, že většina chyb je identifikována spíše ve fázi vývoje automatizace testů než ve skutečné fázi provádění.
# 6. Identifikujte příležitosti pomocí automatizace
Pokud jste předáni s manuální testovací případ k automatizaci , nejen automatizujte tento testovací případ tak, jak je. Místo toho najděte další příležitosti ve své automatizaci, abyste rozšířili rozsah tohoto testovacího případu.
převést youtube video do souboru wav
Například, pokud je vyžadován manuální testovací případ, musíte se přihlásit na webovou stránku. Tento testovací případ můžete rozšířit tak, že bude založen na datech. Seznam všech možných scénářů přihlášení, jako je neplatné heslo, prázdné heslo, neplatné uživatelské jméno, neplatný e-mail, prázdné uživatelské jméno, zapamatujte si mě zaškrtnuto, nekontrolováno atd. Seznam možných scénářů spolu s jejich očekávaným výsledkem do souboru aplikace Excel a vložte tento soubor aplikace Excel jako zdroj dat pro váš testovací případ. Tento automatický testovací případ nyní může po automatizaci otestovat všechny možné scénáře najednou.
Vždy hledejte příležitosti, které lze provést pomocí automatizace, ale je obtížné je provádět ručně. Například scénáře zátěžového testování, srovnávací testy výkonu, stejné testy v různých prostředích s různými konfiguracemi, úniky paměti, vysoce přesné testy atd. To vše jsou pro manuální testery obtížné scénáře.
# 7. Nelze vše automatizovat
Automatizace znamená častější spouštění méně testů. Nejprve musíte začít tím, že nejprve zaútočíte na své kouřové testy. Pak zakryjte stavět přejímací zkoušky . Poté přejděte na často prováděné testy a poté přejděte na testy času. Ale ujistěte se, že každý automatizovaný test šetří čas ručnímu testeru, aby se soustředil na důležitější věci.
Automatizace zde nenahrazuje manuální testery. Ani nemůže. Je zde, aby se opakovaná práce vzdalovala manuálním testerům, aby mohli plně využít své síly a síly při hledání nových testovacích scénářů a chyb. (Přečtěte si můj článek Mylné představy o automatizaci testů)
Automatizujte několik testů, které jsou cenný a spořiče času nebo obtížné pro manuální testery. Pokud jste to udělali, je úkol automatizace hotový.
převést youtube na mp4 zdarma online
# 8. Vyhněte se automatizaci grafického uživatelského rozhraní, pokud je k dispozici alternativní
Automatizace grafického uživatelského rozhraní je vždy tvrdší než jiné typy automatizovaných testů. Takže pokud existuje situace, kdy můžete dosáhnout svého cíle automatizací grafického uživatelského rozhraní, ale některými jinými metodami, jako jsou vstupy příkazového řádku, je nejlepší strategií vyhnout se automatizaci grafického uživatelského rozhraní.
Například, chcete otestovat instalaci aplikace. Cílem je zkontrolovat, zda je aplikace nainstalována či nikoli v konkrétním prostředí. Jedním z přístupů je spuštění instalace a kliknutí na „ další ”Několikrát prostřednictvím vašeho automatizačního nástroje. Může to být složité, časově náročné a podléhá údržbě, pokud se změní uživatelské rozhraní. Druhým přístupem je zahájení instalace aplikace dávkovým souborem s tichými argumenty. Aplikace se tiše nainstaluje a nebude zobrazovat žádné grafické uživatelské rozhraní. Cíle bude dosaženo za kratší dobu a spolehlivějším způsobem.
# 9. Používejte automatizaci i pro další užitečné účely
Automatizace je tak fantastická věc. Můžete z toho dosáhnout takových věcí, na které obvykle nemyslíte. Automatizace není jen o programování manuálního testovacího případu. Namísto, můžete použít automatizaci k usnadnění různých operací ve vaší organizaci.
Například, můžete použít automatizaci k automatickému vytváření kmenových dat a nastavení konfigurací pro ruční testery. Aby mohli zahájit testování co nejdříve.
Mohu uvést jeden příklad od své vlastní společnosti. Chtěli jsme přejít od našeho nástroje pro správu testovacích případů. Používali jsme „Test Director“ (nyní HP ALM) a chtěli jsme přejít na TFS (Team Foundation Server). Ve zkušebním řediteli jsme měli přibližně 4000 manuálních testovacích případů a chyb. Ruční přenos do TFS může trvat asi měsíc. Můj manažer mě tedy požádal, abych vyzkoušel nějakou automatizaci.
Kopal jsem tyto nástroje a zjistil jsem, že Test Director používá jako úložiště SQL server. Pro TFS jsem zjistil nástroj, který umí číst testovací případy a chyby ze souboru aplikace Excel, pokud jsou psány v určitém formátu, a umí je vložit do TFS. Zbytek příběhu je jednoduchý. Napsal jsem dotaz SQL, abych načetl všechny testovací případy a chyby, a exportoval je do souboru Excel v konkrétním formátu. Poté jsem použil tento nástroj, který čte všechny testovací případy a chyby ze souboru aplikace Excel a vložil je do TFS. Celý proces trval jen 3 hodiny. Můj manažer byl velmi šťastný. Doufám, že pochopíte i můj názor.
# 10. Automatizace je vývoj softwaru
Pokud vyvíjíte kvalitní software, potřebuje osvědčené postupy. K psaní kódu kvality potřebuje kontrolu kódu. Je třeba dodržovat rámec nebo návrhový vzor. Vyžaduje neustálou údržbu.
Automatizace je v podstatě vývoj softwaru. Při provádění automatizace by tedy měly být dodržovány všechny osvědčené postupy, které dodržujete při vývoji softwaru. Automatizační rámec by tam měl být. Je třeba provést kontrolu kódu. Chyby v automatizaci by měly být hlášeny v repozitáři chyb. Zdrojový kód automatizace by měl být umístěn pod kontrolu zdroje atd. Čím více s ním zacházíte jako s vývojem softwaru, tím úspěšnější bude automatizace.
Závěr
To shrnuje článek i řadu automatizace testů. Při psaní těchto tutoriálů jsem se naučil mnoho věcí a doufám, že se naučíte také čtením. Automatizace testů je zajímavá a obohacující kariéra. Dělat to správně není prospěšné jen pro vás, ale také pro organizaci.
Každý den při práci na automatizaci testů a jejích technikách nacházím nové a zajímavé výzvy k řešení. Tato série byla pokusem zdůraznit, co by se mohlo na cestě automatizace testů vyskytnout. Doufám, že jsem to doručil správně a jednoduchým způsobem.
Jako vždy čekám na vaše komentáře a návrhy. Svou zpětnou vazbu můžete napsat do sekce komentářů. Budu rád, když se mi ozvete a v případě potřeby vám pomůžu. Děkuji za přečtení.
Výukový program PREV # 6
Doporučené čtení
- Jste odborníkem na manuální nebo automatizační testování? Pracujte na částečný úvazek pro nás!
- Výzvy pro ruční a automatizované testování
- Nejlepší 10+ nejlepších knih o testování softwaru (příručky o manuálním a automatizovaném testování)
- Nástroj pro testování automatizace grafického uživatelského rozhraní Sikuli - Průvodce pro začátečníky Část 2
- Průvodce krok za krokem k implementaci Proof of Concept (POC) v automatizovaném testování
- Proces automatizace testování v 10 krocích: Jak spustit testování automatizace ve vaší organizaci
- Jak se rozhodnout, který typ testování je pro projekt vyžadován? - Ruční nebo Automatizace
- Jak provést ruční testování výkonu?