when opt automation testing
Měli bychom zvážit testování automatizace pro projekt? Kdy bychom měli jít na testování automatizace?
Testování se provádí za účelem poskytnutí kvalitních výstupů koncovému uživateli. Fáze testování je jedním z hlavních aspektů natluču .
Každá společnost se více zaměřuje na testování softwaru, protože jeho kvalita přináší optimální spokojenost zákazníků, ale mnoho z nich se stále potýká s výběrem druhu testování, který má provést, ať už s automatickým testováním nebo manuálním testováním.
Tento článek pomáhá čtenáři pochopit, co je Automation Testing, kdy na to jít, a co je nejdůležitější, kdy na to ne. Naučte se také optimální využití Automatizační nástroje pro testování .
Ať se dělá jakákoli práce, měla by být prováděna efektivně a také musí být nákladově efektivní. Kromě toho by to mělo mít smysl, aby se zákazník cítil spokojený s výsledky.
Co se naučíte:
- Testování softwaru a nákladové výhody
- Inteligence za testováním softwaru
- Automatizace - je to opravdu zásadní?
- Proč automatizace?
- Rizikový faktor
- Kdy by automatizace neměla být upřednostňována?
- Náklady vs ROI pro automatizaci
- Kde může automatizace vykreslit minimální SNÍŽENÍ NÁKLADŮ?
- Závěr
- Doporučené čtení
Testování softwaru a nákladové výhody
Testování softwaru obvykle provádí softwarový tester. Rozdíl mezi testerem a skutečným uživatelem je v tom, že ten bude znát pouze částečné využití softwaru, který se používá pro jejich podnikání nebo pro jeho úkoly, a nebude tento software znát úplně. Na druhou stranu si tester bude vědom všech technických a funkčních požadavků softwaru. Na základě požadavků poskytnutých klientem bude nutné připravit testovací plány a testovací případy.
Testovací plán není nic jiného než podrobný plán způsobu, jakým má být testovací proces proveden. To bude mít úplné podrobnosti o počtu zdrojů a zdrojů zapojených do testování, co dělat a kdy to udělat, co se nebude dělat, a prostředí, ve kterém bude prováděno atd.
Testovací případy by měly být připraveny po jasném pochopení funkčních a technických aspektů softwaru. Tester musí mít velkou pozorovací kapacitu a úplné znalosti o softwaru.
Kromě toho zde hraje efektivní roli cena. Zákazníci raději přijímají software v maximální kvalitě za minimální cenu. Když přejdeme k manuálnímu testování, proces je zdlouhavější a časově náročnější, protože vše provádí ručně tester.
Například , když potřebujeme ‚n‘ počet testerů provést regresní testování , provedení všech testovacích případů může trvat téměř 50 hodin. A na základě dostupnosti prostředků budou provedeny testovací případy. Ale s kratším časem na automatizované testování se provádí optimální využití zdrojů spolu s maximálním pokrytím testovacích případů ve srovnání s manuálním testováním.
Inteligence za testováním softwaru
Pro každou organizaci je velmi důležité vědět, kdy zahájit proces testování a kdy jej ukončit. Měli bychom vědět, kdy začít s testováním, protože je zbytečné zahájit testování, když je fáze vývoje hotová a když nejsou splněna požadovaná kritéria. Osvědčeným postupem je vždy začít s fází návrhu testu, zatímco vývoj probíhá.
Níže jsou uvedena kritéria pro vstup a výstup pro testování softwaru:
Vstupní kritéria
Jakmile je návrhový dokument odhlášen, musí být ve fázi plánování připraveny plány zkoušek. Testovací plán hraje zásadní roli. Požadovaný hardware musí být správně nainstalován a nakonfigurován a je třeba zkontrolovat funkčnost hardwaru. Funkční požadavky musí být jasné a schválené. Vyvinutý kód musí být testován jednotkou a podepsán vývojáři.
Musí být připraveny a schváleny zkušební případy a zkušební údaje. Měla by být k dispozici testovací data a aplikace. Tester musí mít značné a dostatečné znalosti o aplikaci. Zdroje by měly být dobře vyškoleny v oblasti nástrojů a musí být objasněny se všemi požadovanými funkcemi.
Tester musí být k dispozici. Není-li některého z kritérií dosaženo, vstupní kritéria testování jsou odepřena.
[Poznámka: Kliknutím na libovolný obrázek zobrazíte zvětšené zobrazení]
Kritéria opuštění
Pouze když je minimálně 95% povinných testovacích případů uzamčeno s výsledkem „vyhovět“, můžeme opustit fázi testování produktu. Není však tak snadné určit, kdy lze testování softwaru zastavit nebo zda je ještě třeba provést. A taková situace obvykle také nastává.
Níže jsou uvedena hlavní kritéria:
- Až budou všechny chyby opraveny.
- Po dosažení termínu.
- Když je rozpočet vyčerpán nebo vyčerpán.
- Když projdou všechny testovací případy.
- Když je dohoda podepsána.
- Když je provedeno určité procento testování.
- Když Alfa a testování beta končí.
Kritéria ukončení lze odvodit čistě na základě faktorů, jako je riziko, cena atd. Když bylo dosaženo testování hlavního funkčního požadavku, bude testování obvykle zastaveno a nikdy nebudou hledat drobné chyby, které způsobí problém v pozdější období.
Příklad: Software ABC je ve fázi návrhu. K vývoji a testování konstrukce obvykle dochází současně. Poté, co byl návrh zmrazen, začíná vývoj softwaru. Dokončení vývoje softwaru, jak bylo dohodnuto, označuje vstupní kritéria. Dodávky zde jsou od vývojového týmu. Zahrnuje poznámky k vydání a známé problémy.
Po několika iteracích testování, kdy žádné hlavní / blokační / výstavní zarážky nevyřeší rozlišení a 95% testování vyústilo v průchod, je to označováno jako výstupní kritéria.
Automatizace - je to opravdu zásadní?
Když se potřebujeme rozhodnout, zda požadujeme Technika automatického testování nebo ne, vyvstává zde otázka dostupných zdrojů. Důvody, které potřebujeme automatizovat, jsou v kontrole, zda tok dat a vyvinuté funkce fungují podle očekávání bez ručního zásahu nebo ne. Používá se hlavně v místech, kde bude software mít změny ve formě několika vydání / cyklů atd.
ukázkové testovací případy pro aplikaci pojištění
Na konci vývoje každého cyklu bude provedeno testování aktuálně přidané funkce. Kromě toho bude provedeno testování staré funkce, aby se zajistilo, že nebudou narušeny staré funkce. Toto je hlavní část, která má prostor pro automatizaci.
Při ověřování logiky řízené kódem a požadavků grafického uživatelského rozhraní lze zvolit automatické testování, pokud je rizikový faktor vysoký.
Příklad: U Softwaru ABC existují časté upgrady, aktualizace jsou vyžadovány klientem a poskytovány vývojáři. Proto se jako součást testování provádí regrese softwaru, který je již ve výrobě funkční a běží. Bez ohledu na počet vydání, upgradů a aktualizací bude aktuální verze platná.
Řekněme, že pro pokrytí regresního testování je zapotřebí 10 dní manuálního úsilí, a pak je třeba věnovat maximální pozornost jejich automatizaci. Může ušetřit minimálně 60% úsilí a 10 * 8 = 80 hodin manuální práce.
Automatizace může dokončit pouze 80/24 = 3,33 dne. To ušetří zhruba 6,67.
Proč automatizace?
Automatizaci lze zvolit, pouze když:
- Aplikace má velmi rozsáhlou oblast s vysokou mírou investování úsilí do regrese.
- Optimalizace nákladů nastala kvůli manuálním chybám.
- Tento software má několik verzí a verzí.
- Z dlouhodobého hlediska je to nákladově efektivní.
- Rizikový faktor je vyšší pro širší rozsah provádění testu.
- Údaje o nákladech a matematické výpočty jsou součástí funkce softwaru.
- Došlo k většímu zvýšení tempa provádění, efektivity spolu s kvalitou softwaru.
- Je tu menší doba obratu, a to i pro vysoce rizikové testování softwaru.
Rizikový faktor
Rizikový faktor se stává převážně běžným v podnikání, kde existuje mnoho závislostí na časovém faktoru. Software, který funguje na základě transakčních systémů a který funguje ve více aplikacích, bude vyžadovat, aby software fungoval ideálně podle návrhu softwaru. V tomto případě existuje mnoho rizik spojených se získáním správného funkčního chování.
Zde bude automatizace velmi užitečná při provádění funkčních transakcí lepším tempem podle softwarového mechanismu.
Například , v případě indikátoru trhu Forex je časový faktor velmi důležitý a kritický. Ke změnám v zásobách a komoditách dochází s ohledem na čas, někdy méně než sekundy. Zde může automatizace pomoci při testování takového softwaru s vysokým rizikem.
Příklad: Software ABC má několik aktualizací a upgradů. Za účelem úspory manuálního úsilí a snížení doby obratu pro fázi testování lze automatizovat základní verzi nebo staré funkce. To může být platné pouze v případě, že základní funkce zůstanou nezměněny.
Výhodou automatizace je, že je lze spustit bez jakéhokoli ručního zásahu. I to lze provést paralelně s testováním novějších funkcí. Automatizace tedy šetří mnoho úsilí a spoustu času.
Kdy by automatizace neměla být upřednostňována?
Mezi několika organizacemi existuje otázka - Proč není 100% automatizace možná?
Odpověď odborníků je NEDĚLEJ protože kvalifikovaní uživatelé jsou povinni provádět automatizované testování a musí být také dobře vyškoleni. Automatizaci nelze provést během počáteční fáze kritérií a požadavky aplikací nebudou jasné.
Automatizace je obvykle upřednostňována od druhé iterace jakéhokoli vydání softwaru. Může se změnit uživatelské rozhraní, což je nákladnější a údržba skriptu je také nákladnější. Když náklady potřebné pro automatizační nástroj překročí rozpočet projektu, můžeme říci ne.
Příklad: Software XYZ je typ webu elektronického obchodování, kde požadavky klienta nejsou zmrazeny a neustále se mění, když to klient požaduje.
Zde v tomto případě automatizace nemůže pomoci regrese. Důvodem je, že staré funkce, které nejsou platné, by neměly být testovány, a proto je nutné je provádět ručně. Například klient musí mít všechny seznamy v základním softwaru, aby se mohly změnit jako rozevírací pole.
Náklady vs ROI pro automatizaci
ROI je velmi nízká, když jde o automatizaci zpočátku, protože automatizace je poprvé drahá. ROI se neustále zvyšuje, protože manuální úsilí při testování softwaru klesá z iterací druhého vydání. Musíme si být vědomi očekávaného výsledku jakéhokoli testovacího případu před automatizací.
Při výběru automatizace a libovolného nástroje, který zajistí, že nezvýší náklady, zvažte design testovacích případů důležitější.
Kde může automatizace vykreslit minimální SNÍŽENÍ NÁKLADŮ?
Dokonce i náklady na automatizaci, protože je třeba zakoupit požadovaný nástroj pro testování. Zdroje musí být proškoleny s konkrétním nástrojem. Zvolený nástroj musí být proveditelný, aby otestoval všechny oblasti softwaru.
Odborníci na testování automatizace by tedy měli výběr nástrojů provádět pečlivě.
Příklad: Zvažte produkt XYZ, který se zabývá pojištěním. Ke snížení nákladového faktoru společnost použila pouze manuální testování, ale pokud jde o pojištění, rizikový faktor je vysoký a může společnost stát peníze, když se některý z výpočtů pojistného pokazí. Celá ztráta bude buď pro management nebo koncovému uživateli. Koncový uživatel nenese ztrátu, zatímco společnost musí.
Když se vypočtená částka pojistného neshoduje s původní pojistkou (tj.), Když je rozdíl ve výpočtu pojistného front-end a back-end, nastává mezi zákazníkem a prodejcem produktu velký problém. Může obsahovat mnoho modulů, jako jsou automobily, domácnosti a další.
Když se něco pokazí, je to úplná ztráta. Rozdíl ve výpočtu může mít pro testera smysl a může způsobit chyby. V tomto projektu manuální testování lze provést pro základní uživatelské rozhraní, jako je ověření čísla TIN, sociálního ID a dalších informací souvisejících s portfoliem uživatelů, a lze je tedy otestovat ručně, pokud je rizikový faktor nízký. M protože by společnost profitovala, tím více upřednostňuje automatizaci testování svého softwaru.
Závěr
Automatizace i ruční testování mají také výhody a nevýhody. Teprve když si vyjasníme koncepty a požadavky, můžeme si vybrat, jaký druh testování provést.
Žádný projekt nelze testovat pouze manuálním testováním nebo automatickým testováním. Závisí to na designu, platformě a technologii, se kterou byl software vyvinut. Při rozhodování tedy musíte být opatrní při výběru metody testování a používat rady odborníků.
Ve výše uvedeném článku nám mohlo chybět několik faktorů, laskavě se podělte o faktory, které považujete za důležité při výběru automatizace nebo dokonce nástrojů pro automatizaci.
Mezitím se můžete podělit o své komentáře / návrhy týkající se tohoto článku.
Doporučené čtení
- Nejlepší nástroje pro testování softwaru 2021 [QA Test Automation Tools]
- 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í)
- Úloha pomocníka QA při testování softwaru
- 11 nejlepších automatizačních nástrojů pro testování aplikací pro Android (nástroje pro testování aplikací pro Android)
- Jste odborníkem na manuální nebo automatizační testování? Pracujte na částečný úvazek pro nás!
- Kurz testování softwaru: Ke kterému institutu pro testování softwaru bych se měl připojit?
- Výběr testování softwaru jako vaší kariéry