Test Automation Frameworks - Věci, které musíte vědět!

Obsah:

Anonim

V tomto výukovém programu se naučíte

  • Co je to Framework?
  • Co je to TEST Automation Framework?
  • Druhy Automation Framework
  • 1) Lineární skriptování - nahrávání a přehrávání
  • 2) Rámec architektury testovací knihovny.
  • 3) Rámec testování dat.
  • 4) Rámec testování podle klíčových slov nebo podle tabulky.
  • 5) Hybridní testovací automatizační rámec.

Co je to Framework?

Místo poskytnutí knižní definice rámce uvažujme příklad.

Jsem si jistý, že jste se zúčastnili semináře / přednášky / konference, kde byli účastníci požádáni, aby dodržovali následující pokyny -

  • Účastníci by měli zaujmout své místo 5 minut před zahájením přednášky
  • Vezměte si poznámkový blok a pero pro psaní poznámek.
  • Přečtěte si abstrakt, abyste měli představu o čem bude prezentace.
  • Mobilní telefony by měly být nastaveny na tichý režim
  • Pokud chcete odejít uprostřed přednášky, použijte výstupní brány na opačném konci, než je reproduktor.
  • Dotazy budou vzaty na konci zasedání

Myslíte si, že můžete vést seminář BEZ dodržování těchto pokynů ????

Odpověď je velká ANO! Seminář / přednášku / konferenci / demonstraci můžete určitě provádět bez výše uvedených pokynů (ve skutečnosti se jimi někteří nebudeme řídit, i když jsou stanoveny… :-)

Budou-li však tyto pokyny dodržovány, bude to mít za následek prospěšný výsledek, jako je snížené rozptýlení publika během přednášky a zvýšená retence účastníků a pochopení probírané látky.

Na základě výše uvedeného lze Rámec definovat jako soubor pokynů, jejichž dodržování přináší prospěšné výsledky.

Co je to TEST Automation Framework?

Sada pokynů, jako jsou standardy kódování, manipulace s testovacími daty, ošetření úložiště objektů atd., Které při dodržení během automatizačního skriptování přinášejí prospěšné výsledky, jako je zvýšení opětovného použití kódu, vyšší přenositelnost, snížené náklady na údržbu skriptů atd. Toto jsou jen pokyny a ne pravidla; nejsou povinné a stále můžete skriptovat bez dodržování pokynů. Ale přijdou o výhody, které vám přináší Rámec.

Druhy Automation Framework

1) Lineární skriptování
2) Rámec architektury testovací knihovny.
3) Rámec testování dat.
4) Rámec testování podle klíčových slov nebo podle tabulky.
5) Hybridní testovací automatizační rámec.

Pojďme se na ně podívat podrobně -

1) Lineární skriptování - nahrávání a přehrávání

Je to nejjednodušší ze všech rámců a také známý jako „Záznam a přehrávání“ . V tomto rámci Tester ručně zaznamenává každý krok (navigace a uživatelské vstupy), vkládá kontrolní body (kroky ověření) v prvním kole. Poté přehraje nahraný scénář v následujících kolech.

Příklad: Zvažte přihlášení do aplikace Flight Reservation a zkontrolujte, zda se aplikace načetla při úspěšném přihlášení. Zde tester jednoduše zaznamená kroky a přidá kroky ověření.

SystemUtil.Run "flight4a.exe", "", "", "otevřít"Dialog („Přihlášení“). WinEdit („Název agenta:“). Nastavit „Guru99“Dialog („Přihlášení“). WinEdit („Heslo:“). Nastavte „Merkur“Dialog („Přihlášení“). WinButton („OK“). Klikněte„Po úspěšném přihlášení se načetlo okno rezervace letuOkno („Rezervace letu“). Zkontrolujte CheckPoint („Rezervace letu“)

Výhody

  • Nejrychlejší způsob generování skriptu
  • Odbornost v automatizaci není nutná
  • Nejjednodušší způsob, jak se naučit funkce testovacího nástroje

Nevýhody

  • Malé opětovné použití skriptů
  • Testovací data jsou pevně zakódována do skriptu
  • Noční můra údržby

2) Rámec architektury testovací knihovny.

Označuje se také jako „strukturované skriptování“ nebo „funkční rozklad“.

V tomto rámci se testovací skripty zpočátku zaznamenávají metodou „Record & Playback“. Později jsou běžné úkoly uvnitř skriptů identifikovány a seskupeny do funkcí. Tyto funkce jsou volány hlavním testovacím skriptem s názvem Driver různými způsoby, jak vytvářet testovací případy.

Příklad: Použitím stejného příkladu jako výše bude vypadat funkce pro přihlášení do rezervace letu.

Přihlášení funkce ()SystemUtil.Run "flight4a.exe", "", "", "otevřít"Dialog („Přihlášení“). WinEdit („Název agenta:“). Nastavit „Guru99“Dialog („Přihlášení“). WinEdit („Heslo:“). Nastavte „Merkur“Dialog („Přihlášení“). WinButton („OK“). KlikněteUkončit funkci

Nyní tuto funkci v hlavním skriptu zavoláte následujícím způsobem

Zavolat přihlášení ()---------------------------Další volání funkcí / kroky testu.---------------------------

Výhody

  • Vyšší úrovně opětovného použití kódu je dosaženo ve strukturovaném skriptování ve srovnání s "Záznamem a přehráváním"
  • Automatizační skripty jsou méně nákladné na vývoj kvůli vyššímu opětovnému použití kódu
  • Snadnější údržba skriptů

Nevýhody

  • K psaní skriptů pomocí Test Library Framework je nezbytná technická odbornost.
  • Na plánování a přípravu testovacích skriptů je zapotřebí více času.
  • Testovací data jsou ve skriptech pevně zakódována

3) Rámec testování dat.

V tomto rámci je logika testovacích případů umístěna v testovacích skriptech, testovací data jsou oddělena a uchovávána mimo testovací skripty. Testovací data se načítají z externích souborů (soubory Excel, textové soubory, soubory CSV, zdroje ODBC, objekty DAO, objekty ADO) a načítají se do proměnných uvnitř testovacího skriptu. Proměnné se používají jak pro vstupní hodnoty, tak pro ověřovací hodnoty. Samotné testovací skripty se připravují pomocí lineárního skriptování nebo testovací knihovny.

Příklad: Vývoj přihlašovacího skriptu rezervace letu pomocí této metody bude zahrnovat dva kroky.

Krok 1) Vytvořte testovací - datový soubor, kterým může být Excel, CSV nebo jakýkoli jiný zdroj databáze.

AgentName

Heslo

Jimmy

Rtuť

Tina

RTUŤ

Účtovat

Rtuť

Krok 2) Vytvořte testovací skript a odkažte na svůj zdroj testovacích dat.

SystemUtil.Run "flight4a.exe", "", "", "otevřít"Dialog („Přihlášení“). WinEdit („Název agenta:“). Nastavit DataTable („AgentName“, dtGlobalSheet)Dialog („Přihlášení“). WinEdit („Heslo:“). Nastavit DataTable („Heslo“, dtGlobalSheet)Dialog („Přihlášení“). WinButton („OK“). Klikněte„Zkontrolovalo se okno rezervace letuOkno („Rezervace letu“). Zkontrolujte CheckPoint („Rezervace letu“)** Poznámka „dtGlobalSheet“ je výchozí list aplikace Excel poskytovaný QTP.

Výhody

  • Změny testovacích skriptů nemají vliv na testovací data
  • Testovací případy lze provést s více sadami dat
  • Řadu testovacích scénářů lze provést pouhou změnou testovacích dat v externím datovém souboru

Nevýhody

  • Je zapotřebí více času na plánování a přípravu testovacích skriptů i testovacích dat

4) Rámec testování podle klíčových slov nebo podle tabulky.

Rámec založený na klíčových slovech nebo na stolech vyžaduje vývoj datových tabulek a klíčových slov, nezávisle na nástroji pro automatizaci testů použitém k jejich provedení. Zkoušky lze navrhnout s aplikací nebo bez ní. V testu založeném na klíčových slovech je funkčnost testování aplikace zdokumentována v tabulce i v podrobných pokynech pro každý test.

Rámec řízený klíčovými slovy obsahuje 3 základní komponenty, viz. Klíčové slovo, mapa aplikace, funkce součásti.

Co je klíčové slovo?

Klíčové slovo je akce, kterou lze provést na komponentě grafického uživatelského rozhraní. Př. U textového pole pro komponentu GUI by některá klíčová slova (akce) byla InputText, VerifyValue, VerifyProperty atd.

Co je mapa aplikace?

Mapa aplikace poskytuje pojmenované odkazy pro komponenty grafického uživatelského rozhraní. Mapy aplikací nejsou nic jiného než „ úložiště objektů

Co je funkce komponent?

Funkce komponent jsou ty funkce, které aktivně manipulují nebo interogují komponentu GUI. Příkladem funkce by bylo kliknutí na tlačítko web se všemi zpracováváním chyb, zadávání dat do webové úpravy se všemi zpracováváním chyb. Funkce komponent mohou být závislé na aplikaci nebo nezávislé.

Příklad : Chcete-li porozumět zobrazení klíčových slov, vezměte si stejný příklad. Zahrnuje 2 kroky

Krok 1 : Vytvoření datové tabulky (liší se od tabulky testovacích dat vytvořené v rozhraní Data Driven Framework). Tato datová tabulka obsahuje akci, která má být provedena na objektech GUI, a odpovídající argumenty, pokud existují. Každý řádek představuje jeden testovací krok.

Objekt

(MAPA aplikace)

Akce

(KLÍČOVÁ SLOVA)

Argument

WinEdit (název agenta)
Soubor
Guru99
WinEdit (heslo)
Soubor
Rtuť
WinButton (OK)
Klepněte na
Okno (rezervace letu)
Ověřit
Existuje

Krok 2 : Psaní kódu ve formě komponentních funkcí.

Jakmile vytvoříte své datové tabulky, jednoduše napíšete program nebo sadu skriptů, které budou číst v každém kroku, provedou krok na základě klíčového slova obsaženého v poli Akce, provedou kontrolu chyb a zaznamenají všechny relevantní informace. Tento program nebo sada skriptů by vypadala podobně jako níže uvedený pseudokód:

Funkce main (){Volání ConnectTable (název tabulky) {// Volání funkce pro připojení k tabulce.while (Call TableParser ()! = -1) // Volání funkce pro analýzu a extrahování hodnot z tabulky.{Předejte hodnoty příslušným funkcím KOMPONENTŮ. Podobně jako Set (název objektu, argument) ex. Set (název agenta, Guru99).}}Po provedení celé operace zavolejte funkci CloseConnection () // Funkce pro ukončení spojení.} // Konec hlavní

To je vše pro Framework Driven Framework.

Výhodou Framework Driven Framework je, že klíčová slova jsou znovu použitelná. Chcete-li tomu porozumět, zvažte, že chcete ověřit operaci přihlášení pro web, řekněte YAHOO MAIL. Tabulka bude vypadat takto -

Objekt (MAPA APLIKACE) Akce (KLÍČOVÉ SLOVO) Argument
WebEdit (uživatelské jméno) Soubor Tato e-mailová adresa je chráněna před spamboty. Abyste ji mohli zobrazit, musíte mít povolený JavaScript.
WebEdit (heslo) Soubor xxxxx
WebButton (OK) Klepněte na
Okno (Yahoo Mail) Ověřit Zatížení

Pokud v tomto případě dodržujete klíčová slova Set, Click, Verify, zůstanou stejná, pro které jsou odpovídající funkce komponent již vyvinuty. Vše, co musíte udělat, je změnit Mapování aplikací (úložiště objektů) z dřívější rezervace letu na Yahoo Mail, se změnou hodnot argumentů a stejný skript bude fungovat!

Výhody

  • Poskytuje vysokou opakovatelnou použitelnost kódu
  • Nezávislý na testovacím nástroji
  • Nezávisle na testované aplikaci funguje stejný skript pro AUT (s určitými omezeními)
  • Zkoušky mohou být navrženy s AUT nebo bez AUT

Nevýhody

  • Počáteční investice je docela vysoká, výhody toho lze realizovat, pouze pokud je aplikace značně velká a testovací skripty budou zachovány po několik let.
  • K vytvoření rámce řízeného klíčovým slovem je nutná vysoká odbornost v automatizaci.

POZNÁMKA: I když se Micro Focus UFT inzeruje jako KeyWord Driven Framework, pomocí HP UFT nemůžete dosáhnout úplné nezávislosti testovacího nástroje a aplikace.

5) Hybridní testovací automatizační rámec.

Jak název napovídá, tento rámec je kombinací jednoho nebo více rámců diskutovaných výše, které vycházejí ze svých silných stránek a snaží se zmírnit jejich slabosti. Tento hybridní testovací automatizační rámec je to, z čeho se většina frameworků vyvíjí v průběhu času a více projektů. Maximální odvětví používá Framework klíčových slov v kombinaci metody rozkladu funkcí.

PS: Další rámce, které stojí za zmínku, jsou

Testujte modularitu

V tomto rámci je běžná úloha v testovacím skriptu seskupena jako moduly.

Příklad : Pomocí Akce v QTP můžete vytvořit skripty Modualr

Ukázkový skript pro přihlášení

SystemUtil.Run "flight4a.exe", "", "", "otevřít"Dialog („Přihlášení“). WinEdit („Název agenta:“). Nastavit „Guru99“Dialog („Přihlášení“). WinEdit („Heslo:“). Nastavte „Merkur“Dialog („Přihlášení“). WinButton („OK“). Klikněte„Konec skriptu

Nyní můžete tuto akci volat v hlavním skriptu takto -

RunAction ("Přihlášení [Argument]", oneIteration)

Testování podnikových procesů (BPT)

Tento rámec rozděluje velké obchodní procesy na komponenty, které lze opakovaně použít opakovaně ve stejných nebo různých testovacích skriptech. Například obchodní proces rezervace letu je rozdělen na komponenty, jako je přihlášení, hledání letů, rezervace, platby a odhlášení, které lze znovu použít ve stejném obchodním procesu nebo různých procesech. BPT také usnadňuje užší koordinaci mezi malými a středními podniky a automatizačními inženýry.