Čo je testovanie automatizácie? - Testovací proces a jeho typy

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





Softvér sa stáva cennejším a dôležitejším, pretože vítame nové aplikácie a zariadenia v našich domácnostiach a podnikoch, ktoré prevezmú velenie nad dôležitou úlohou. 16. aprílath, 1994, sa tesne pred pristátím na letisku zrútilo smrteľné lietadlo. Kde bolo zabitých 250 ľudí, čo bola najsmrteľnejšia nehoda v čínskych leteckých spoločnostiach. Hlavnou príčinou incidentu boli softvérové ​​chyby. Používatelia softvéru neboli pred implementáciou testovaní. Každý systém má chyby softvéru. Nie je možné navrhnúť softvérový systém bez akýchkoľvek chýb. Zlyhanie spôsobené softvérovými chybami v systéme je možné chrániť testovaním softvéru. Testovanie softvéru je proces používaný na zistenie chyby, úplnosti a kvality vyvinutého počítačového softvéru. Zahŕňa súbor činností vykonávaných s úmyslom vyhľadať chyby v softvéri, aby bolo možné ich opraviť skôr, ako sa produkt vydá koncovým používateľom. Existujú dva typy testovacích postupov, manuálne testovanie a automatizácia testovanie.

Čo je testovanie automatizácie?

Automatizované testovanie využíva pomoc nástrojov, skriptov a softvéru na vykonávanie testovacích prípadov opakovaním preddefinovaných akcií. Úplne to závisí od predskriptovaného testu, kde pri vykonaní predskriptu porovnáme očakávaný výsledok so skutočným. Testy ako zaťaženie, stres, hrot je možné testovať pomocou automatizačných nástrojov. Príklad: Facebook testuje rozhranie mozog-počítač, ktoré dokáže prevádzať myšlienky do digitálnych textov.




Ktoré testovacie prípady by sa mali automatizovať ako prvé?

Nasledujú testovacie prípady, ktoré sa majú najskôr automatizovať,

  • Opakovaná úloha - Príklad ako web elektronického obchodu, ktorý viackrát testuje prihlasovacie údaje, aby sa ubezpečil, že prihlasovacia stránka funguje podľa požiadaviek používateľa.
  • Zachytávanie a zdieľanie výsledkov - Namiesto znižovania počtu a tvorby grafov môže byť užitočné investovať do nástrojov alebo automatizačnej stratégie, kde je možné ušetriť čas.
  • Test zadávania údajov - Automatizácia informácií do zdroja údajov tak, aby bol ľahko čitateľný. Kde je možné lepšie zvládnuť variabilitu údajov. To je, keď chcete vyhľadávať konkrétne údaje z tisícov údajov, môžete na ich vyhľadanie použiť automatizačný nástroj.
  • Časová alebo skríningová odpoveď - Nie je potrebné manuálne sledovať obrazovku, dá sa vylepšiť použitím automatizovaného kódu „počkajte, kým“.
  • Nefunkčné testovanie - Príkladom automatizácie nefunkčného typu testovania je automatizácia testovania záťaže. Ak máme namiesto manuálneho testovania záťaž desať tisíc, je lepšou možnosťou použiť testovanie automatizácie.

Automatizačný testovací proces

Krok za krokom použitý na test automatizácie je



automatizácia - test - proces

automatizačný-testovací proces

1). Výber testovacieho nástroja

Pre úspešnosť automatizácie je veľmi dôležité zvoliť správny nástroj podľa povahy použitého testu. Na testovanie na základe kódu spracujte alebo grafické užívateľské rozhranie Podľa toho sa musia zvoliť vhodné nástroje na testovanie.


2). Definujte rozsah automatizácie

Rozsah automatizácie hrá základnú úlohu. Napríklad dôležitým znakom pre každé podnikanie sú scenáre, ktoré obsahujú veľké množstvo údajov, tie, ktoré majú spoločnú funkčnosť na rôznych platformách a aplikáciách, a zložitosť testovacích prípadov. Atď.

3). Návrh a vývoj plánovania

Po určení cieľa a typu testovania, ktoré sa majú automatizovať, by sa malo rozhodnúť, čo by automatizovaný test vykonal. Najskôr vytvorte testovacie prípady na menšie logické testy, potom napíšte testovacie skripty a vyvíjajte testovacie balíčky, kde sa budú spúšťať automaticky jeden za druhým. To sa generuje vytvorením testu v obleku, ako je knižnica, ktorá má viac testovacích prípadov.

4). Vykonanie testu

Na vykonanie testovacieho skriptu sa používa automatizačný nástroj alebo nástroj na správu testov. Po konečnom vykonaní je potrebné podrobne vypracovať správu o jednotlivých testoch. Aby bolo možné správu použiť ako referenciu pre ďalšie testy.

5). Údržba

Pre každý cyklus sa majú pridávať, kontrolovať a udržiavať automatizačné skripty. Tam, kde je nevyhnutná údržba. Napríklad po napísaní kódu kód skontrolujeme a ak sa vyskytne chyba, dôjde k poruche. Preto identifikujeme, ktorá časť kódu obsahuje chybu, opravíme ju a potom spustíme kód hneď od začiatku. Údržba teda hrá zásadnú úlohu, čo zvyšuje nevyhnutnosť automatizačných skriptov.

Prístupy k automatizácii

Existujú tri prístupy k automatizácii, ktorými sú

1). Prístup riadený kódom

Testuje rámcovú prácu, zameriava sa na vykonávanie testovacích prípadov a zisťuje, či rôzne sekcie kódov fungujú podľa očakávaní za rôznych podmienok alebo nie. Je to populárna metóda používaná pri agilnom vývoji softvéru.

2). Grafické užívateľské rozhranie (GUI)

Aplikácie s grafickým rozhraním GUI je možné testovať pomocou tejto metódy na zaznamenávanie akcií a odpovedí používateľov, a to mnohokrát. Príklad: Selénový nástroj používaný na testovanie webových stránok. Testovacie prípady je možné písať v ľubovoľnom skriptovacom jazyku, ako je java, phyton, C .. atď.

3). Rámcový prístup

Je to súbor usmernení. Tam, kde rámec spája knižnice funkcií, zdroje testovacích údajov, podrobnosti o objektoch a ďalšie opakovane použiteľné moduly. Náklady na údržbu sú nižšie a vysoko efektívne. Príklad: Ak dôjde k akejkoľvek zmene v testovacom prípade, je potrebné aktualizovať túto časť súboru s testovacím prípadom bez akejkoľvek zmeny ovládača alebo spúšťacích skriptov.

Typy rámcov

Existujú rôzne typy rámcových prístupov

  • Lineárna skriptovacia práca
  • Dáta riadená rámcová práca
  • Rámcová práca riadená kľúčovými slovami
  • Modulárne skúšobné rámové práce
  • Hybridné testovanie rámovej práce.

Typy automatizačných testov

Existujú rôzne typy automatizačných testov

  1. Testovanie jednotky
  2. Testovanie dymu
  3. Funkčné testovanie
  4. Testovanie integrácie
  5. Regresné testovanie

1). Testovanie jednotiek

Vo webovej aplikácii môže byť niekoľko komponentov / modelov, ktoré sa majú testovať. Proces testovania každého modelu je jednotkové testovanie. Robí sa to vo fáze vývoja. Kde kódy píšu vývojári a tiež testeri.

2). Testovanie dymu

Testovanie dymu je alternatívne známe ako „Build Verification Testing“. Používa sa na kontrolu, či je kód napísaný podľa očakávania konečných výsledkov alebo podľa čísla. Pri testovaní dymu, akonáhle je test hotový, jeho konečný výsledok rozhodne, či má budúci test pokračovať alebo nie. Problémy počas testovania je možné identifikovať už v počiatočnom štádiu.

3). Funkčné testovanie

Kontroluje funkčnosť webu, podľa toho pracuje alebo nie. Napríklad, ak vezmeme do úvahy prihlasovaciu stránku, kde musíme zadať ID používateľa a heslo. Pokiaľ nezadáme správne údaje, naša očakávaná stránka sa neotvorí. Ak je kód napísaný pre prihlasovaciu stránku a je testovaný správne, očakávaná stránka sa otvorí, znamená to, že funkčný test funguje správne.

4). Testovanie integrácie

V tomto sú jednotlivé komponenty integrované a testované naraz. Kde môžeme skontrolovať, či sú jednotlivé moduly kompatibilné so vzájomnou komunikáciou. Napríklad, ak vezmeme do úvahy výrobu guľôčkového pera, kde sa pero skladá z náplne, čiapky, tela., Ktoré sa vyrábajú osobitne a zostavujú sa dohromady. Pri montáži ich kontrolujeme, či sú správne namontované alebo nie.

5). Regresné testovanie

Ak dôjde v kóde k akejkoľvek aktualizácii, ubezpečíme sa, že to nebude mať vplyv na už napísané kódy. Preto robíme regresné testovanie. Regresným testovaním sa aktualizuje kód na základe požiadavky, detekuje sa chyba a opraví sa. Príkladom regresného testovania je webová stránka bankovníctva, kde sa webová stránka podľa potreby pravidelne aktualizuje, napríklad aktualizuje zostatok na bežnom účte. Pri aktualizácii webu sa preto musíte uistiť, že novo aktualizované funkcie neovplyvnia už existujúce funkcie.

Ako si vybrať automatizačné nástroje?

Ak chcete zvoliť vhodný automatizačný nástroj, skontrolujte nasledujúce vlastnosti uvedené nižšie,

  • Podpora životného prostredia
  • Testovanie databázy
  • Identifikácia objektu
  • Testovanie obrazu
  • Testovanie obnovenia chyby
  • Podpora viacerých rámových prác
  • Minimalizujte náklady
  • Rozsiahle protokoly o testoch a náklady.

Typy nástrojov na automatizáciu

Existuje veľa nástrojov na testovanie automatizácie, niektoré z nich sú uvedené nižšie

1). Selén

Je to open-source, čo je populárna testovacia metóda na vykonávanie webových aplikácií, viacerých prehľadávačov a platforiem. Posledná verzia selénu je Selenium4. Programátor požaduje vopred programovacie jazykové znalosti. Existujú štyri komponenty selénu, selén IDE, selénové diaľkové ovládanie, webový ovládač, selénová mriežka.

2). voda

Jedná sa o open-source testovací nástroj zložený z rubínovej knižnice, ktorý automatizuje testovanie webových aplikácií. Posledná verzia watiru je watir 6.16. Kódy môžu byť napísané v akomkoľvek jazyku. Firefox, chrome, safari sú určité prehľadávače, ktoré watir podporuje. Niektoré z funkcií watiru sú: krátke obrazovky, výkon stránky a ľahko sa dá stiahnuť akýkoľvek súbor.

3). Ranorex

Jedná sa o flexibilný nástroj na testovanie grafického používateľského rozhrania. Je vhodný pre všetky prehliadače a zariadenia všetkých prostredí. Podporuje C # a V.NET. Je zabudovaný v systéme Microsoft Windows a Windows Server. Hlavné komponenty ranorexu sú ranorex rekordér, ranorex úložisko, ranorex spy, ranorex editor kódu a ranorex debugger.

4). API (Testovanie aplikačného programového rozhrania)

Jedná sa o mobilný testovací nástroj, ktorým je aplikačný softvér open-source. API zistí, či vykonaný test API poskytuje presné výsledky alebo nie. Existujú rôzne typy testovania API, ktoré sú: testovanie jednotiek, funkčné testovanie, testovanie záťaže, detekcia chýb za behu, testovanie zabezpečenia, testovanie webového rozhrania, penetračné testovanie, testovanie fuzz. Je implementovaný na POSIX API.

Automatizačné testovacie nástroje pre mobilné aplikácie

Rôzne typy automatizačných testovacích nástrojov pre mobilné aplikácie sú Appium, Robotium, MonkeyRunner, UI Automator, Selendroid, MonkeyTalk, Testdroid, Calabash, Frank, SeeTest

1). appium

  • Je to open-source
  • Podporuje Java, Ruby a ďalšie
  • Zdrojový kód je možné znovu použiť
  • Kompatibilné pre Android a Ios.

2). roboty

  • Je to open-source
  • Kompatibilné pre všetky verzie a podverzie systému Android.
  • Kódy sú písané v jazyku Java.

3). Monkeyrunner

  • Testovanie na rámcovej alebo funkčnej úrovni sa vykonáva pomocou monkeyrunner
  • Kódy sú napísané v pythone
  • Vlastnosti: ovláda veľa zariadení naraz, automatizáciu je možné rozšíriť, je možné testovať aplikácie a hardvér pre Android, automatizáciu je možné rozšíriť.

4). UI Automator

  • Používa sa na testovanie používateľských rozhraní pomocou testovacích prípadov používateľského rozhrania.
  • Podporuje rôzne verzie androidov
  • Dokáže zamknúť a odomknúť smartfóny

5). Selendroid

  • Používa sa na testovanie používateľského rozhrania hybridného systému založeného na systéme Android.
  • Testovacie prípady sa píšu pomocou selendroidu
  • TO protokol ako drôt JSON je veľmi kompatibilný.

Riziko spojené s testovaním automatizácie

Riziko spojené s testovaním automatizácie je

  • Počiatočné náklady budú vysoké
  • Automatizácia nikdy nie je stopercentná
  • Neautomatizuje neurčené používateľské rozhranie
  • Nesprávne vyhodnotenie času a úsilia
  • Nekompatibilita automatizačných nástrojov.

Výhody automatizovaného testovania

Výhody automatizácia testovanie je

  • Vykonávanie testovacích prípadov je zjednodušené
  • Zvyšuje spoľahlivosť testu
  • Znižuje náklady na údržbu
  • Výsledky testov sa zverejňujú
  • Žiadne ľudské chyby
  • Šetrí čas a pamäť.

Tu je popísaný softvér automatizované testovanie, jeho testovací proces, typy automatizačného testovania a automatizačný testovací nástroj. Tu je otázka, „ako je testovanie automatizácie lepšie ako manuálne testovanie?“.