Čo je testovanie automatizácie?
Automation Testing alebo Test Automation je technika testovania softvéru, ktorá sa pri vykonávaní sady testovacích prípadov vykonáva pomocou špeciálnych softvérových nástrojov na automatické testovanie. Naopak, manuálne testovanie vykonáva človek sediaci pred počítačom, ktorý starostlivo vykonáva testovacie kroky.
Softvér na testovanie automatizácie môže tiež zadávať údaje o teste do systému pod testom, porovnávať očakávané a skutočné výsledky a generovať podrobné správy o testoch. Softvér na testovanie softvéru si vyžaduje značné investície peňazí a zdrojov.
Postupné vývojové cykly budú vyžadovať opakované vykonávanie tej istej testovacej sady. Pomocou nástroja na automatizáciu testov je možné zaznamenať túto testovaciu sadu a podľa potreby ju znova prehrať. Po automatizácii testovacej sady nie je potrebný žiadny zásah človeka. Týmto sa zlepšila návratnosť investícií do automatizácie testov. Cieľom automatizácie je znížiť počet testovacích prípadov, ktoré sa majú spustiť manuálne, a nie úplne vylúčiť manuálne testovanie.
Ak video nie je prístupné, kliknite sem
V tomto výučbe automatizovaného testovania softvéru sa naučíte základy testovacej automatizácie, ako napríklad
- Čo je testovanie automatizácie?
- Prečo automatické testovanie?
- Ktoré testovacie prípady sa majú automatizovať?
- Automatizovaný testovací proces
- Výber testovacieho nástroja
- Definujte rozsah automatizácie
- Plánovanie, návrh a vývoj
- Vykonanie testu
- Rámec pre automatizáciu
- Osvedčené postupy pre automatizačný nástroj
- Výhody testovania automatizácie
- Typy automatizovaného testovania
- Ako si vybrať automatizačný nástroj?
- Automatizačné testovacie nástroje
Prečo testovať automatizáciu?

Automatizácia testov je najlepší spôsob, ako zvýšiť efektívnosť, pokrytie testov a rýchlosť vykonávania pri testovaní softvéru. Automatizované testovanie softvéru je dôležité z nasledujúcich dôvodov:
- Ručné testovanie všetkých pracovných postupov, všetkých polí a všetkých negatívnych scenárov je časovo aj finančne náročné
- Je ťažké testovať viacjazyčné stránky manuálne
- Automatizácia testov pri testovaní softvéru nevyžaduje ľudský zásah. Automatický test môžete spustiť bez dozoru (cez noc)
- Automatizácia testov zvyšuje rýchlosť vykonávania testu
- Automatizácia pomáha zvýšiť pokrytie testu
- Ručné testovanie môže byť nudné, a preto náchylné na chyby.
Ktoré testovacie prípady sa majú automatizovať?
Testovacie prípady, ktoré sa majú automatizovať, je možné zvoliť pomocou nasledujúceho kritéria na zvýšenie ROI automatizácie
- Vysoké riziko - obchodné kritické testovacie prípady
- Testovacie prípady, ktoré sa opakovane vykonávajú
- Testujte prípady, ktoré sú veľmi zdĺhavé alebo ťažko vykonateľné manuálne
- Testovacie prípady, ktoré sú časovo náročné
Nasledujúca kategória testovacích prípadov nie je vhodná na automatizáciu:
- Testovacie prípady, ktoré sú novo navrhnuté a nevykonávajú sa manuálne aspoň raz
- Testovacie prípady, pre ktoré sa požiadavky často menia
- Testovacie prípady, ktoré sa vykonávajú ad hoc.
Automatizovaný testovací proces:
Nasledujú nasledujúce kroky v automatizačnom procese
Krok 1) Výber testovacieho nástroja
Krok 2) Definujte rozsah automatizácie
Krok 3) Plánovanie, návrh a vývoj
Krok 4) Vykonanie testu
Krok 5) Údržba

Výber testovacieho nástroja
Výber testovacieho nástroja do značnej miery závisí od technológie, na ktorej je postavená testovaná aplikácia. Napríklad QTP nepodporuje Informatica. QTP teda nemožno použiť na testovanie aplikácií Informatica. Je dobré uskutočniť dôkaz o koncepcii nástroja na AUT.
Definujte rozsah automatizácie
Rozsah automatizácie je oblasť vašej testovanej aplikácie, ktorá bude automatizovaná. Nasledujúce body pomôžu určiť rozsah:
- Funkcie, ktoré sú dôležité pre podnikanie
- Scenáre, ktoré obsahujú veľké množstvo údajov
- Spoločné funkcie naprieč aplikáciami
- Technická uskutočniteľnosť
- Miera opätovného použitia obchodných komponentov
- Zložitosť testovacích prípadov
- Schopnosť použiť rovnaké testovacie prípady na testovanie naprieč prehliadačmi
Plánovanie, návrh a vývoj
Počas tejto fázy vytvoríte automatizačnú stratégiu a plán, ktorý obsahuje nasledujúce podrobnosti -
- Boli vybrané automatizačné nástroje
- Dizajn rámca a jeho vlastnosti
- Položky automatizácie v rozsahu a mimo rozsahu pôsobnosti
- Príprava testovacieho automatu
- Časový harmonogram a skriptovanie a vykonávanie
- Výstupy z testovania automatizácie
Vykonanie testu
Počas tejto fázy sa vykonávajú automatizačné skripty. Skripty potrebujú pred spustením vstupné testovacie údaje. Po vykonaní poskytujú podrobné správy o testoch.
Vykonanie je možné vykonať pomocou automatizačného nástroja priamo alebo prostredníctvom nástroja Test Management, ktorý vyvolá automatizačný nástroj.
Príklad: Centrum kvality je nástroj na správu testov, ktorý následne vyvolá QTP na vykonávanie automatizačných skriptov. Skripty je možné vykonávať na jednom stroji alebo v skupine strojov. Popravu je možné vykonať počas noci, aby ste ušetrili čas.
Prístup k údržbe testovacej automatizácie
Prístup k údržbe testovacej automatizácie je fáza testovania automatizácie, ktorá sa vykonáva s cieľom otestovať, či nové funkcie pridané do softvéru fungujú dobre alebo nie. Údržba v automatizačnom testovaní sa vykoná, keď sa pridajú nové automatizačné skripty a je potrebné ich skontrolovať a udržiavať, aby sa zlepšila účinnosť automatizačných skriptov s každým nasledujúcim cyklom vydania.
Rámec pre automatizáciu
Rámec je súbor pokynov pre automatizáciu, ktoré pomáhajú pri implementácii
- Udržiavanie konzistentnosti testovania
- Vylepšuje štruktúrovanie testov
- Minimálne použitie kódu
- Menej údržby kódu
- Zlepšiť opätovnú použiteľnosť
- Do kódu môžu byť zapojení netechnickí testeri
- Tréningové obdobie používania náradia je možné skrátiť
- Zahŕňa údaje, kedykoľvek je to vhodné
Pri testovaní automatizačného softvéru sa používajú štyri typy rámcov:
- Rámec automatizácie riadený dátami
- Rámec automatizácie riadenej kľúčovými slovami
- Modulárny automatizačný rámec
- Hybridný automatizačný rámec
Osvedčené postupy pre automatizačný nástroj
Ak chcete dosiahnuť maximálnu návratnosť investícií do automatizácie, postupujte podľa nasledujúcich pokynov
- Pred začatím projektu je potrebné podrobne určiť rozsah automatizácie. Toto dáva očakávania od automatizácie správne.
- Vyberte správny automatizačný nástroj: Nástroj nesmie byť vybraný na základe jeho popularity, ale je v súlade s požiadavkami na automatizáciu.
- Vyberte vhodný rámec
- Štandardy pre skriptovanie - Pri písaní skriptov pre automatizáciu je potrebné dodržiavať štandardy. Niektoré z nich sú-
- Vytvorte jednotné skripty, komentáre a odsadenie kódu
- Adekvátne riešenie výnimiek - Ako sa rieši chyba pri zlyhaní systému alebo neočakávanom správaní aplikácie.
- Užívateľom definované správy by mali byť kódované alebo štandardizované pre protokolovanie chýb, aby ich testéri pochopili.
- Merajte metriky - Úspešnosť automatizácie nemožno určiť porovnaním manuálneho úsilia s úsilím automatizácie, ale aj zachytením nasledujúcich metrík.
- Percento zistených chýb
- Čas potrebný na testovanie automatizácie pre každý cyklus vydania
- Na vydanie je potrebný minimálny čas
- Index spokojnosti zákazníkov
- Zvyšovanie produktivity
Vyššie uvedené pokyny, ak sú dodržané, môžu výrazne pomôcť pri úspešnom dokončení automatizácie.
Výhody testovania automatizácie

Nasledujú výhody automatizácie testov:
- O 70% rýchlejšie ako pri manuálnom testovaní
- Širšie pokrytie testovacích funkcií aplikácií
- Spoľahlivá vo výsledkoch
- Zaistite súlad
- Šetrí čas a náklady
- Zlepšuje presnosť
- Počas popravy nie je potrebný zásah človeka
- Zvyšuje účinnosť
- Vyššia rýchlosť pri vykonávaní testov
- Opätovne použiteľné testovacie skripty
- Testujte často a dôkladne
- Viac cyklu vykonávania možno dosiahnuť pomocou automatizácie
- Skorý čas uvedenia na trh
Typy automatizovaného testovania
- Testovanie dymu
- Testovanie jednotiek
- Testovanie integrácie
- Funkčné testovanie
- Testovanie kľúčových slov
- Regresné testovanie
- Testovanie na základe údajov
- Testovanie čiernej skrinky
Ako si vybrať automatizačný nástroj?
Výber správneho nástroja môže byť zložitá úloha. Nasledujúce kritérium vám pomôže vybrať najlepší nástroj pre vaše požiadavky -
- Podpora životného prostredia
- Jednoduchosť použitia
- Testovanie databázy
- Identifikácia objektu
- Testovanie obrazu
- Testovanie obnovenia chyby
- Mapovanie objektov
- Použitý skriptovací jazyk
- Podpora rôznych typov testov - vrátane funkčných, správy testov, mobilných zariadení atď.
- Podpora viacerých testovacích rámcov
- Ľahko laditeľné skripty pre automatizačný softvér
- Schopnosť rozpoznávať objekty v akomkoľvek prostredí
- Rozsiahle protokoly o testoch a výsledky
- Minimalizujte náklady na školenie vybraných nástrojov
Výber nástrojov je jednou z najväčších výziev, ktorú je potrebné vyriešiť skôr, ako sa pustíte do automatizácie. Najskôr identifikujte požiadavky, preskúmajte rôzne nástroje a ich schopnosti, stanovte očakávania od nástroja a choďte na Proof Of Concept.
Automatizačné testovacie nástroje
Na trhu existuje veľa nástrojov na testovanie funkčnosti a regresie. Tu sú najlepšie nástroje na automatizáciu testov certifikované našimi odborníkmi
-
Štúdio Ranorex
Ranorex Studio je nástroj typu „všetko v jednom“ na automatizáciu funkčných testov používateľského rozhrania, regresných testov, testov na základe údajov a oveľa viac. Aplikácia Ranorex Studio obsahuje ľahko použiteľné rozhranie typu click-and-go na automatizáciu testov webových, desktopových a mobilných aplikácií.
Vlastnosti:
- Funkčné užívateľské rozhranie a komplexné testovanie na počítači, webe a mobilných zariadeniach
- Testovanie naprieč prehliadačmi
- SAP, ERP, Delphi a staršie aplikácie.
- iOS a Android
- Spúšťajte testy lokálne alebo vzdialene, paralelne alebo distribuujte na selenovom rošte
- Robustné hlásenie
Uč sa viac
-
Svedectvo
Testim je najrýchlejšia cesta k odolným end-to-end testom bez kódovania, kódovania alebo k obom. Testim vám umožňuje vytvárať úžasne stabilné testy bez kódovania, ktoré využívajú našu AI, ale tiež flexibilitu exportovať testy ako kód. Zákazníci ako Microsoft, NetApp, Wix a JFrog uskutočňujú každý mesiac milióny testov na serveri Testim
Vlastnosti
- Na ladenie, prispôsobenie alebo refaktorovanie testov môžete využiť moderné testovacie rozhranie API Testim a vaše IDE.
- Uložte test do svojho systému riadenia verzií, aby ste ich synchronizovali s pobočkami, a spustite testy pri každom potvrdení.
- Integrácia s populárnymi nástrojmi
Uč sa viac
-
Selén
Je to softvérový testovací nástroj používaný na regresné testovanie. Jedná sa o nástroj na testovanie otvoreného zdroja, ktorý poskytuje zariadenie na prehrávanie a nahrávanie pre regresné testovanie. Selenium IDE podporuje iba webový prehliadač Mozilla Firefox.
- Poskytuje ustanovenie na export zaznamenaného skriptu do iných jazykov, ako sú Java, Ruby, RSpec, Python, C # atď
- Môže byť použitý s rámcami ako JUnit a TestNG
- Môže vykonávať viac testov naraz
- Automatické dopĺňanie selénových príkazov, ktoré sú bežné
- Pokyny
- Identifikuje prvok pomocou id, názvu, X-cesty atď.
- Testy ukladajte ako Ruby Script, HTML a akýkoľvek iný formát
- Poskytuje možnosť presadiť názov pre každú stránku
- Podporuje súbor selenium user-extensions.js
- Umožňuje vkladať komentáre do stredu skriptu pre lepšie pochopenie a ladenie
Stiahnite si selén
-
QTP (MicroFocus UFT)
QTP je široko používaný na funkčné a regresné testovanie, je určený pre všetky hlavné softvérové aplikácie a prostredia. Na zjednodušenie vytvárania a údržby testov využíva koncept testovania na základe kľúčových slov. Umožňuje testerovi vytvárať testovacie prípady priamo z aplikácie.
- Netechnickou osobou sa ľahšie prispôsobuje a vytvára pracovné testovacie prípady
- Opravuje chyby rýchlejšie dôkladným zdokumentovaním a replikáciou chýb pre vývojárov
- Zbaliť vytvorenie testu a dokumentáciu k testu na jednom mieste
- Parametrizácia je jednoduchá ako WinRunner
- QTP podporuje vývojové prostredie .NET
- Má lepší mechanizmus identifikácie objektov
- Môže vylepšiť existujúce skripty QTP bez použitia aplikácie „Testovaná aplikácia“ pomocou aktívnej obrazovky
Stiahnite si QTP
-
Rational Functional Tester
Jedná sa o objektovo orientovaný automatizovaný funkčný testovací nástroj, ktorý je schopný vykonávať automatizované funkčné, regresné, dátovo orientované testovanie a testovanie GUI. Hlavné črty tohto nástroja sú
- Podporuje širokú škálu protokolov a aplikácií ako Java, HTML, NET, Windows, SAP, Visual Basic atď.
- Môže zaznamenávať a prehrávať akcie na požiadanie
- Dobre sa integruje s nástrojmi na správu riadenia zdrojov, ako sú integrácia Rational Clear Case a Rational Team Concert
- Umožňuje vývojárom vytvoriť skript spojený s kľúčovým slovom, aby ho bolo možné znova použiť
- Editor Eclipse Java Developer Toolkit umožňuje tímu kódovať testovacie skripty v prostredí Java pomocou aplikácie Eclipse
- Podporuje vlastné ovládacie prvky prostredníctvom proxy SDK (Java / .Net)
- Podporuje riadenie verzií, aby umožnil paralelný vývoj testovacích skriptov a súčasné použitie geograficky distribuovaným tímom
Stiahnite si Rational Functional Tester
-
Watir
Je to open source testovací softvér pre regresné testovanie. Umožňuje vám písať testy, ktoré sa ľahko čítajú a udržiavajú. Watir podporuje iba Windows Explorer v oknách, zatiaľ čo Watir webdriver podporuje Chrome, Firefox, IE, Opera atď.
- Podporuje viac prehliadačov na rôznych platformách
- Namiesto použitia originálneho skriptu dodávateľa používa plne funkčný moderný skriptovací jazyk Ruby
- Podporuje vašu webovú aplikáciu bez ohľadu na to, v čom je vyvinutá
Stiahnite si Watir
-
SilkTest
Hodvábny test je určený na vykonávanie funkčných a regresných testov. Pre aplikácie elektronického podnikania je hodvábny test popredným produktom na testovanie funkčnosti. Je produktom prevzatia spoločnosti Segue Software spoločnosťou Borland v roku 2006. Je to objektovo orientovaný jazyk, podobne ako C ++. Používa koncept objektu, tried a dedičstva. Medzi jeho hlavné črty patrí
- Skladá sa zo všetkých zdrojových súborov skriptu
- Konvertuje príkazy skriptu na príkazy GUI. Na rovnakom počítači môžu byť príkazy spustené na vzdialenom alebo hostiteľskom počítači
- Na identifikáciu pohybu myši spolu so stlačeniami klávesov je možné vykonať Silktest. Na získanie dialógov môže využiť metódu prehrávania aj záznamu alebo metódy popisného programovania
- Identifikuje všetky ovládacie prvky a okná testovanej aplikácie ako objekty a určuje všetky atribúty a vlastnosti každého okna
Stiahnite si SilkTest
Zhrnutie
Test Automation je technika testovania softvéru, ktorá sa pomocou špeciálnych softvérových nástrojov na automatické testovanie vykonáva pomocou sady testovacích prípadov.
Automatizácia testov je najlepší spôsob, ako zvýšiť efektívnosť, pokrytie testov a rýchlosť vykonávania pri testovaní softvéru.
Výber testovacieho nástroja do značnej miery závisí od technológie, na ktorej je postavená testovaná aplikácia.
Prístup k údržbe testovacej automatizácie je fáza testovania automatizácie, ktorá sa vykonáva s cieľom otestovať, či nové funkcie pridané do softvéru fungujú dobre alebo nie.
Správny výber automatizačného nástroja, testovací proces a tím sú dôležitými hráčmi úspešnej automatizácie. Manuálne a automatizačné metódy idú ruka v ruke s úspešným testovaním.