how choose best automation testing tool
V tomto tutoriálu jsme pro vaši snadnou referenci pokryli kritéria pro výběr nástroje pro automatizaci testů a kontrolní seznam s maticí pro srovnání nástrojů pro automatizaci testů.
Průvodce A až Z při výběru nejlepšího automatizačního nástroje pro váš projekt:
Toto je 4thvýukový program v naší sérii výukových programů pro automatizaci testů. Zkontrolujte prosím všechny články zveřejněné v této sérii na této stránce: => Nejlepší průvodce zahájením testování automatizace vašeho projektu
Výběr nástroje pro automatizaci testování je jedním z nejdůležitějších kroků před spuštěním automatizace v jakékoli organizaci.
Je to důležité, protože tento nástroj výrazně ovlivní celé vaše úsilí v oblasti automatizace. Pokud je nástroj dobrý a poskytuje požadované funkce, automatizace se stává snazší a efektivnější.
Při výběru nástroje pro automatizaci je třeba vzít v úvahu mnoho kritérií. O některých z nich jsem hovořil v jednom ze svých předchozích článků. Zde jsem uvedl seznam nejdůležitějších aspektů, které je třeba vzít v úvahu při výběru nástroje pro automatizaci testů.
Co se naučíte:
- Je pro vás automatické testování řešením?
- Kdy má automatizace testů smysl?
- Jak vybrat automatizační nástroj pro váš projekt?
- Kritéria hodnocení nástroje pro automatizaci testování
- Kritéria výběru a kontrolní seznam nástrojů pro automatizaci
- Otázka č. 1: Jaký je rozpočet vaší organizace na automatizační nástroj?
- Otázka č. 2: Jaká je skutečná cena nástroje?
- Otázka č. 3: Podporuje nástroj operační systém / prohlížeč nebo zařízení, ve kterém běží vaše aplikace?
- Otázka č. 4: Podporuje nástroj technologie a ovládací prvky třetích stran používané ve vaší aplikaci?
- Otázka č. 5: Kolik jazyků nástroj podporuje? Máte kvalifikované zdroje pro tyto jazyky?
- Otázka č. 6: Podporuje nástroj připojení k různým zdrojům dat?
- Otázka č. 7: Jaký je mechanismus hlášení automatizačního nástroje?
- Otázka č. 8: Lze nástroj integrovat do úložišť testovacích případů a chyb?
- Otázka č. 9: Jaká je oficiální technická podpora nástroje?
- Otázka č. 10: Některé technické aspekty, které je třeba vidět
- Závěr
- Doporučené čtení
Je pro vás automatické testování řešením?
Během své kariéry jsem pracoval na mnoha projektech. Když pracujete na stejném projektu déle než jeden rok, začnete silně pociťovat potřebu automatizovat některé úkoly. Začnete uvažovat o zavedení automatizačního testování projektu, pokud to projektové vedení dosud neuvažovalo.
Jeden rok je dost času na to, aby kdokoli znal informace o jakémkoli projektu. Jednou podrobně znáte funkčnost projektu, bude snazší rozhodnout, které opakující se úkoly je třeba automatizovat.
Nějaký testeři se také nudí dělat stejné opakující se úkoly znovu a znovu a oni silně začínají cítit potřebu automatizace testů.
Znamená to, že byste se měli hned pustit do testování automatizace?
Určitě ne!
Než se rozhodnete, zda je automatizace pro vás řešením, musíte pracovat na mnoha kritériích .
Kdy má automatizace testů smysl?
- Když existuje mnoho opakovaných testů
- Při častých iteracích regresního testování
- Když potřebujete simulovat velký počet uživatelů kteří používají prostředky aplikace
- Když AUT má poměrně stabilní uživatelské rozhraní
- Když máte velkou sadu případů BVT
- Když se nemůžete spolehnout pouze na ruční provedení testu pro kritické funkce
Další čtení:
- Kdy byste měli jít na automatizaci?
- Tipy, které byste si měli přečíst před zahájením automatizovaného testování
Jakmile víte, že je ten správný čas investovat svůj čas a peníze do dobrého automatizačního nástroje, můžete začít hledat nejlepší automatizační nástroj, který vyhovuje vašim potřebám.
Jak vybrat automatizační nástroj pro váš projekt?
Úspěch automatizovaného testování do značné míry závisí na výběru správných testovacích nástrojů. Vyhodnocení příslušných automatizačních nástrojů dostupných na trhu trvá hodně času. Toto je ale nutné jednorázové cvičení, které z dlouhodobého hlediska prospěje vašemu projektu.
Bylo několik situací, kdy jsem dostal příležitost zkontrolovat a vybrat automatizační nástroj pro své projekty. Úkol byl obtížný, protože jsme museli zvládnout naše testovací potřeby a omezení nákladů, ale stálo to za zkušenost.
Před výběrem libovolného testovacího nástroje je třeba vzít v úvahu následující kritéria:
Kritéria hodnocení nástroje pro automatizaci testování
1) Máte k dispozici potřebné kvalifikované zdroje pro úkoly automatizace?
dva) Jaký je tvůj rozpočet?
3) Vyhovuje nástroj vašim testovacím potřebám? Je to vhodné pro projektové prostředí a technologii, kterou používáte? Podporuje všechny nástroje a objekty použité v kódu? Někdy se můžete zaseknout při malých testech kvůli neschopnosti nástroje identifikovat objekty použité v aplikaci.
Pro výběr jakéhokoli nástroje považuji výše uvedené tři faktory za nejdůležitější.
4) Poskytuje vám nástroj bezplatnou zkušební verzi, abyste ji mohli před rozhodnutím vyhodnotit? Má nástroj také všechny funkce dostupné ve zkušební verzi?
5) Je aktuální verze nástroje stabilní? Je společnost dodavatele založena s dobrou zákaznickou podporou, online zdroji nápovědy a uživatelskou příručkou?
6) Jaká je křivka učení nástroje? Je doba učení přijatelná pro vaše cíle?
7) Chcete automatizační nástroj pouze pro potřeby vašeho projektu nebo hledáte společný nástroj pro všechny projekty ve vaší společnosti? Byla by to dobrá volba, pokud na svých projektech vyberete nástroj, který podporuje většinu kódovacích jazyků.
c ++ převést char * na int
8) Které typy testování podporuje? Nástroj, který podporuje maximální typy testování (jednotka, funkce, regrese atd.), Je vždy lepší volbou.Varování- Nepoužívejte nástroj jen proto, že podporuje všechny typy testování. Je také důležité, aby byl tento nástroj dostatečně výkonný, aby automatizoval vaše složité požadavky.
9) Podporuje tento nástroj snadné rozhraní pro vytváření a údržbu testovacích skriptů? Dobrým řešením by mohl být nástroj pro nahrávání a přehrávání se schopnostmi upravovat zaznamenané skripty.
10) Poskytuje jednoduché rozhraní, ale výkonné funkce pro provádění složitých úkolů?
jedenáct) Jak snadné je poskytnout vstupní testovací data pro složité nebo zátěžové testy? Nástroj podporující vstup testovacích dat z různých datových souborů, jako je Excel, XML, textový soubor atd., By byl velkou úlevou pro automatizaci testerů.
12) Poskytuje silný reporting s grafickým rozhraním? Jasné a stručné zprávy vám vždy pomohou rychle uzavřít výsledky testu.
13) Integruje se dobře s vašimi dalšími testovacími nástroji, jako je plánování projektů a nástroje pro správu testů ?
Můžete také zvážit další kritéria, jako například:
14) Zásady vracení peněz od dodavatele nástrojů
patnáct) Hodnocení stávajících zákazníků pro tento nástroj
16) Poskytuje prodejce počáteční školení?
Tipy: Shromažďování požadavků je zdaleka nejdůležitějším krokem pro výběr správného nástroje. Nezapomeňte kategorizovat své požadavky v kategoriích must have, nice to have a not required feature. To vám pomůže rychle vyhodnotit nástroj. Nezapomeňte, že na trhu již nenájdete nástroj, který bude podporovat všechny vaše potřeby automatizace!
Nejlepší automatizační nástroje :
HP QTP / UFT a selen jsou dvě nejoblíbenější možnosti testování funkcí, které jsou v současné době k dispozici. QTP / UFT je nejlepší nástroj pro testování funkcí podporovaný širokou škálou kódovacích jazyků a platforem, zatímco Selenium je nejlepší nástroj pro testování funkčních webů s otevřeným zdrojovým kódem.
V tomto článku najdete seznam TOP nástrojů:
Top 20 nejlepších automatizačních testovacích nástrojů v roce 2020 (úplný seznam)
V dalším článku si povíme výzvy pro manuální a automatizované testování .
Kritéria výběru a kontrolní seznam nástrojů pro automatizaci
10 otázek, které je třeba položit před výběrem nejlepšího nástroje pro automatizaci testování
Zeptejte se na následující otázky, kdykoli se nacházíte v situaci, abyste vybrali automatizační nástroj pro vaši organizaci:
Otázka 1: Jaký je rozpočet vaší organizace na automatizační nástroj?
To je podle mého názoru nejdůležitější věc, kterou je třeba při výběru automatizačního nástroje vzít v úvahu.
Proč hledat QTP / UFT a zkoumat to, když si nemůžete zakoupit licenci? Nástroj QTP stojí přibližně 8 000 USD (přibližně). Pokud vaše organizace může licenci zakoupit a jste potvrzeni, měli byste si stáhnout zkušební verzi a vytvořit na ní pivotní automatizační projekt, abyste otestovali její funkci. Jinak byste neměli trávit čas zkoumáním. (O tomto scénáři mluvím, pokud chcete použít QTP na živém projektu společnosti. Pokud si ho stahujete pouze pro účely učení, je v pořádku stáhnout si zkušební verzi.)
Otázka 2: Jaká je skutečná cena nástroje?
Další je cena automatizačního nástroje. K dispozici je nejen cena licence, ale také cena doplňků (v případě potřeby), poplatek za podporu, poplatek za školení a poplatek za upgrade.
Nejprve si promluvme o licenci.
a) Druhy licencí:
Existují následující typy licencí.
kopírovat DVD filmy na pevný disk zdarma
1) Licence uzlu uzamčeného uživatele.
Licence Uzel uzamčeného uživatele bude podporovat nástroj pro automatizaci testů pro použití na jednom fyzickém počítači ve vaší firemní síti. V licencovaném počítači můžete spustit pouze jednu instanci nástroje najednou. Tato licence je obvykle vázána na název hostitele počítače.
2) Souběžná plovoucí uživatelská licence
Plovoucí uživatelská licence může být sdílena mezi různými stroji, ale může být použita pouze jedním strojem najednou. Není vázán na název počítače ani nic jiného, místo toho používá správce licencí (nainstalovaného na serveru) ke správě stejné licence na různých počítačích.
V zásadě s licencí Node-Locked nemáte svobodu nainstalovat nástroj na jeden počítač, odinstalovat jej a poté znovu nainstalovat na jakýkoli jiný počítač. Ale s plovoucí uživatelskou licencí to máte povoleno.
3) Licence Run Time
Výše uvedené dva typy licencí se obvykle kupují za účelem „vývoje“ skriptů. Jedná se tedy o „vývojové“ licence. Chcete-li spouštět skripty na různých počítačích, musíte mít licenci „spuštění“ nebo „běh“ pro každý počítač.
Příklad:
Například pokud tester potřebuje vyvíjet a spouštět testovací případy na stejném počítači, stačí jedna vývojová licence.
Pokud ale potřebuje vyvíjet na jednom stroji a provádět testovací případy na třech různých virtuálních nebo fyzických strojích, musí si koupit jednu „vývojovou“ licenci a tři runtime licence.
Někteří prodejci nabízejí bezplatné runtime licence (Like Coded UI) a někteří nabízejí cenu (jako Test Complete, Ranorex atd.). Všechno tedy záleží na prodejci prodejci.
4) Licence Open Source
Je na vaší společnosti, zda se rozhodnete pro komerční nástroj a zaplatíte náklady, nebo si otevřete nástroj s otevřeným zdrojovým kódem.
Komerční nástroje jsou drahé, ale nabízejí velkou podporu a jsou snadno použitelné se spoustou poskytnutého školicího materiálu. Komerční nástroje jsou obvykle „jedním nástrojem pro všechny potřeby“. Nástroje s otevřeným zdrojovým kódem jsou zdarma, ale obecně je obtížnější se je naučit. Oficiální podpora je málo, ale řešení najdete na různých fórech. Open source řešení jsou obvykle pro specifické potřeby.
b) Poplatek za podporu, upgrade a školení:
Potřebujete-li podporu, školení a poplatek za upgrade, možná budete muset zavolat zástupce společnosti. Některé společnosti nabízejí speciální slevy na hromadný nákup licencí, takže někdy tyto informace nejsou jasně uvedeny na webových stránkách. Informace získáte pouze prostřednictvím volání nebo e-mailů.
Otázka č. 3: Podporuje nástroj operační systém / prohlížeč nebo zařízení, ve kterém běží vaše aplikace?
Tato otázka obvykle závisí na typu aplikace, kterou používáte.
a) Pokud je založen na počítači:
Pokud pracujete na desktopové aplikaci, měli byste ji nastínit, kolik operačních systémů chcete tuto aplikaci otestovat. Pracoval jsem na desktopové aplikaci a chtěl jsem ji otestovat na Windows 7 a Windows 8.1. Takže jsem si vybral Coded UI, protože podporuje obojí.
b) Je-li založen na prohlížeči
Pokud pracujete na webové aplikaci, měli byste ji nastínit, kolik prohlížečů chcete tuto aplikaci otestovat. Chtěl jsem provést testovací případy na FireFox, Chrome a IE. Pro svou webovou aplikaci jsem si vybral selen, protože podporuje všechny tyto prohlížeče. Ujistěte se, že vybraný nástroj by měl podporovat starší i novější verze požadovaných prohlížečů.
c) Je-li mobilní
Pokud pracujete na mobilních aplikacích, měli byste vědět, na kterých mobilních operačních systémech musíte testovací případy spustit. Pokud vaše aplikace běží na Androidu i IOS, měl by to váš nástroj podporovat. Selenium má samostatné ovladače pro spouštění skriptů pro Android, IOS, Windows Phone a BlackBerry. Můžete také použít samostatný nástroj pro každý z mobilních operačních systémů. K dispozici je Robotium pro Android, Appium pro IOS a Android a CodedUI pro telefonní aplikace pro Windows.
Opět jde o debatu o otevřeném zdroji vs. komerčním. Jak vidíte, existují samostatné otevřené zdroje nástroje pro testování na webu , mobilní a desktopové aplikace. Pokud ale použijete komerční nástroj, jako je Test Complete, Ranorex nebo Test Studio, mohou otestovat všechny tři typy (mobilní, desktopové a prohlížečové aplikace). V případě komerčního nástroje se tedy musíte naučit pouze jeden nástroj pro testování webových, desktopových a mobilních aplikací.
Otázka č. 4: Podporuje nástroj technologie a ovládací prvky třetích stran používané ve vaší aplikaci?
To je velmi důležitý aspekt při výběru nástroje. Z první ruky byste měli vědět, jaké technologie se ve vaší aplikaci používají. Poraďte se s vývojáři a zapište si je. Pokud ve webových aplikacích používají HTML 5 nebo SilverLight, dejte si pozor, není mnoho automatizačních nástrojů, které by je podporovaly. Pokud nástroj deklaruje podporu těchto technologií, stáhněte si zkušební verzi tohoto nástroje a zkuste ve své aplikaci identifikovat různé objekty. Pokud je nástroj nedokáže identifikovat, je jejich tvrzení nepravdivé. Tato aktivita vás zachrání před následným utrpením.
Srovnávací matice testovacích automatizačních nástrojů:
Následující tabulka porovnává různé nástroje s ohledem na jejich licenční cenu a jejich podporu různých technologií. (Tuto tabulku byste měli brát jako učební postup, jak vytvářet srovnání mezi různými nástroji, ale přesnost uvedených údajů není 100%)
(Klikněte na obrázek pro zvětšení)
vnější spojení vs úplné vnější spojení
Y = Podporováno, N = Nepodporováno, U = Neznámo
Otázka č. 5: Kolik jazyků nástroj podporuje? Máte kvalifikované zdroje pro tyto jazyky?
Učení nástroje je jedním z aspektů. Učení jazyka je dalším aspektem. Pokud máte prostředky, které mají odborné znalosti jazyka Java, a váš nástroj nepodporuje jazyk Java, čas na učení nového jazyka se přidá k vašemu úsilí automatizace.
Dalším aspektem je, že pokud je váš produkt postaven na prostředí Java, musíte mít tým vývojářů, kteří jsou odborníky na prostředí Java. Tito vývojáři mohou také pomoci automatizačnímu týmu, pokud jde o problémy související s jazykem. Výběr nástroje, který nabízí jazyk, který je obeznámen s vašimi zdroji, je důležitý a pomůže vám minimalizovat křivku učení pro vaše zdroje.
The Selenium WebDriver nabízí psaní skriptů ve více jazycích, jako je C #, Java, Python, Ruby a v JavaScriptu. TestComplete také nabízí psaní skriptů ve více skriptovacích jazycích, jako jsou VBScript, JScript, DelphiScript, C ++ Script a C # Script.
Otázka č. 6: Podporuje tento nástroj připojení k různým zdrojům dat?
Pokud používáme automatizační rámec, jako je klíčové slovo nebo řízené daty, musíme mít možnost připojit náš nástroj k jakémukoli zdroji dat. Pokud nástroj poskytuje snadné připojení k různým zdrojům dat, bude to velmi výhodné.
Podívejte se na podporu běžných zdrojů dat, jako je soubor CSV, soubor Excel, soubor XML a databáze. Pokud jsou v nástroji přítomny, je dobré jít.
Otázka č. 7: Jaký je mechanismus hlášení automatizačního nástroje?
Když provedeme skript, buď projde, nebo selže. V případě povolení není k dispozici mnoho informací kromě doby trvání a informací o prostředí. V případě selhání však potřebujeme komplexní zprávu o selhání. Zpráva by nám měla říci, že přesně v kterém kroku skript selže. Další výhodou bude snímek okamžiku selhání.
Tuto zprávu je také třeba exportovat do různých formátů, abychom ji mohli sdílet se zúčastněnými stranami. V mnoha nástrojích jsou tyto možnosti integrovány a v některých nástrojích existují způsoby, jak vytvořit přehled komplexní. Na další věc je třeba dávat pozor při stahování zkušební verze nástroje. Pokud poskytuje komplexní zprávy o selháních, je to pro organizaci nejlepší.
Otázka č. 8: Lze nástroj integrovat do úložišť testovacích případů a chyb?
Existuje velká šance, že vaše organizace již používá jakýkoli testovací případ nebo nástroj pro správu chyb . Společnosti zjevně chtějí, aby byl jejich automatizovaný nástroj integrován s jejich stávajícím nástrojem pro správu testovacích případů, aby byla správně spravována celá jejich životnost. Tento aspekt by měl být viděn i při výběru nástroje pro automatizaci testů.
QTP podporuje QLM, podporuje kódované uživatelské rozhraní TFS a TestComplete podporuje QAComplete. Některé nástroje Open source mají také podporu pro integraci se stávajícími nástroji pro správu testů open source. Vše záleží na tom, co vaše organizace ve skutečnosti používá.
Otázka č. 9: Jaká je oficiální technická podpora nástroje?
Tady mluvíme pouze o komerčních nástrojích. Když vyberete komerční nástroj, jeho aspekt podpory je velmi důležitý. Prohlédněte si školicí materiál uvedený na webových stránkách. Obsahuje web videa a návody? Má web oficiální fórum pro dotazy? Stáhněte si zkušební verzi a natočte otázku na jejich fóru a podívejte se, kolik dní dostane odpověď. Poskytují podporu pro volání?
Výše uvedené otázky by měly být pokládány pokaždé, protože za nástroj utrácíte slušné množství peněz. Pokud nástroj nemá dobrou podporu, neobtěžujte se ho koupit.
Otázka č. 10: Některé technické aspekty vidět
Je třeba vidět i některé další technické aspekty, například:
a) Podpora nahrávání a přehrávání
Není to doporučený přístup v automatizaci testů, ale je dobré mít nástroj. Zjednodušuje proces učení nástroje a usnadňuje automatizaci snadných scénářů.
b) Různé metody rozpoznávání objektů a podpora mapování objektů
Měla by existovat paleta výběru stejného objektu různými metodami. Některé objekty je obtížné rozpoznat. Různé metody výběru jsou tedy vždy užitečné.Například, selen podporuje výběr objektů pomocí id, jméno, třída, test odkazu, XPATH , Selektor CSS a JavaScript. Zde je návod na - jak QTP jednoznačně identifikuje objekty . Pokud jedna metoda výběru nefunguje, máme na výběr řadu dalších metod, které jsou vždy užitečné.
Podobně by měla existovat možnost správně mapovat tyto objekty v úložišti objektů. Toto úložiště by mělo být snadno aktualizovatelné a spravovatelné. Jen pro připomenutí, že Selenium nemá integrovanou podporu pro mapování objektů.
c) Různé kontrolní body nebo podpora tvrzení.
Testovací případ je předán nebo selhal na základě kontrolních bodů nebo tvrzení. Pokud má nástroj řadu metod ke kontrole očekávaných výsledků, je to výhodné. QTP má řadu kontrolních bodů, jako je Standard , Rastrový obrázek , Stůl , XML, databáze a kontrolní body obsahu souboru.
d) Zpracování scénářů obnovy.
Pokud testovací případ selže a chcete pokračovat v provádění, podporuje tento nástroj tak snadno? Pokud se scénáře obnovy v nástroji snadno spravují, umožní vám to provést testovací případy bez jakékoli závady. Testovací případy můžete spustit v noci a ráno získáte výsledky s uvedením, které testovací případy selhaly a které testovací případy byly předány. K tomu dojde, pouze pokud lze nástroj snadno spravovat zotavení z neúspěšných testovacích případů. V opačném případě bude při zpracování scénářů obnovy zbytečné velké množství úsilí automatizace. Vidět správa scénářů obnovy v QTP .
Závěr
Vždy pamatujte, že žádný nástroj není dobrý nebo špatný nástroj. Vše záleží na vašich požadavcích a povaze produktu.
Selen může být nejoblíbenějším automatizačním nástrojem, ale pokud je váš produkt založen na stolním počítači, tento nástroj pro vás nemá žádný užitek. Nejprve pochopte svůj produkt a poté podle pokynů uvedených v tomto kurzu vyhledejte vhodný nástroj, který odpovídá vašim požadavkům.
Správný výběr automatizačního nástroje hraje při úspěšné automatizaci zásadní roli.
Další výukový program - Náš další výukový program v této sérii je věnován rámcům vývoje a automatizace skriptů s příklady. Opět zkontrolujte všechny výukové programy v této sérii na této stránce .
Neváhejte zveřejnit své dotazy / komentáře níže týkající se výběru správného automatizačního nástroje.
Výukový program PREV # 3 | DALŠÍ výukový program č. 5
Doporučené čtení
- Nástroj pro testování automatizace grafického uživatelského rozhraní Sikuli - Průvodce pro začátečníky Část 2
- Alfa testování a beta testování (kompletní průvodce)
- Výukový program Geb - Testování automatizace prohlížeče pomocí nástroje Geb
- Kompletní průvodce pro testování ověřování sestavení (testování BVT)
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)
- Funkční testování vs. nefunkční testování
- 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