Jak používat Selenium IDE se skripty a příkazy (Assert, Verify)

Budeme používat Mercury Web Tours jako naše testovaná webová aplikace. Jedná se o online rezervační systém letenek, který obsahuje všechny prvky, které potřebujeme pro tento tutoriál. Jeho URL je https://demo.guru99.com/test/newtours/a toto bude naše základní adresa URL.

Pojďme nyní vytvořit náš první testovací skript v Selenium IDE pomocí nejběžnější metody – nahráváním. Poté provedeme náš skript pomocí funkce přehrávání.

Vytvořte skript nahráváním

Krok 1

  • zahájit Firefox si Selenium SDI.
  • Zadejte hodnotu pro naši základní adresu URL: https://demo.guru99.com/test/newtours/.
  • Toggle Zapněte tlačítko Záznam (pokud ještě není ve výchozím nastavení zapnuto).

Vytvořte skript nahráváním

Krok 2

In Firefox, navigovat do https://demo.guru99.com/test/newtours/. Firefox byste měli přejít na stránku podobnou té, která je zobrazena níže.

Vytvořte skript nahráváním

Krok 3

  • Klepněte pravým tlačítkem myši na libovolné prázdné místo na stránce, například na Mercury Logo Tours v levém horním rohu. Toto vyvolá Selenium Kontextová nabídka IDE. Poznámka: Neklikejte na žádné objekty nebo obrázky s hypertextovými odkazy
  • Vyberte možnost „Zobrazit dostupné příkazy“.
  • Poté vyberte „assertTitle exact: Welcome: Mercury Prohlídky.” Toto je příkaz, který zajišťuje správnost názvu stránky.

Vytvořte skript nahráváním

Vytvořte skript nahráváním

Krok 4

  • V textovém poli „Uživatelské jméno“. Mercury Prohlídky, zadejte neplatné uživatelské jméno „invalidUNN“.
  • Do textového pole „Heslo“ zadejte neplatné heslo „invalidPWD“.

Vytvořte skript nahráváním

Vytvořte skript nahráváním
Krok 5

  • Klikněte na tlačítko „Přihlásit se“. Firefox by vás měl přesměrovat na tuto stránku.

Vytvořte skript nahráváním

Krok 6

Toggle Vypnutím tlačítka nahrávání nahrávání zastavíte. Váš skript by nyní měl vypadat jako níže uvedený.

Vytvořte skript nahráváním

Krok 7

Nyní, když jsme s naším testovacím skriptem hotovi, uložíme jej do testovacího případu. V nabídce Soubor vyberte „Uložit testovací případ“. Případně můžete jednoduše stisknout Ctrl+S.

Vytvořte skript nahráváním

Krok 8

  • Vyberte požadované umístění a poté jej pojmenujte Testovací případ jako „Neplatné_login“.
  • Klikněte na tlačítko „Uložit“.

Vytvořte skript nahráváním

Krok 9

Všimněte si, že soubor byl uložen jako HTML.

Vytvořte skript nahráváním

Krok 10) Jít zpět k Selenium IDE a kliknutím na tlačítko Přehrát spustíte celý skript. Selenium IDE by mělo umět vše bezchybně replikovat.

Vytvořte skript nahráváním

Úvod do Selenium Příkazy – Selenese

  • Selenese příkazy mohou mít maximálně dva parametry: cíl a hodnotu.
  • Parametry nejsou nutné neustále. Záleží na tom, kolik bude příkaz potřebovat.

Typy příkazů

Akce Jedná se o příkazy, které přímo interagují s prvky stránky.

Příklad: příkaz „click“ je akce, protože přímo interagujete s prvkem, na který klikáte.

Příkaz „type“ je také akcí, protože vkládáte hodnoty do textového pole a textové pole vám je na oplátku zobrazuje. Mezi vámi a textovým polem existuje obousměrná interakce.

Příslušenství Jsou to příkazy, které umožňují ukládat hodnoty do proměnné.

Příklad: příkaz „storeTitle“ je přístupový objekt, protože pouze „čte“ název stránky a ukládá jej do proměnné. Neinteraguje s žádným prvkem na stránce.

Tvrzení Jsou to příkazy, které ověřují, zda je splněna určitá podmínka.

3 typy tvrzení

  • Tvrdit. Když příkaz „asset“ selže, test se okamžitě zastaví.
  • Ověřit si. Když příkaz „ověřit“ selže, Selenium IDE zaznamená toto selhání a pokračuje v provádění testu.
  • Čekat na. Než přistoupíte k dalšímu příkazu, příkazy „waitFor“ nejprve počkají na splnění určité podmínky.
    • Pokud se podmínka stane pravdivou během čekací doby, krok projde.
    • Pokud se podmínka nestane pravdivou, krok selže. Selhání je zaprotokolováno a provádění testu pokračuje dalším příkazem.
    • Ve výchozím nastavení je hodnota časového limitu nastavena na 30 sekund. Můžete to změnit v Selenium Dialogové okno Možnosti IDE na kartě Obecné.

Potvrdit vs. Ověřit v Selenium

Potvrdit vs. Ověřit v Selenium

Potvrdit vs. Ověřit v Selenium

Společné příkazy

Příkaz Počet parametrů Description
otevřít 0 - 2 Otevře stránku pomocí adresy URL.
click/clickAndWait 1 Kliknutí na zadaný prvek.
type/typeKeys 2 Zadává posloupnost znaků.
ověřitTitle/assertTitle 1 Porovná skutečný název stránky s očekávanou hodnotou.
ověřit TextPresent 1 Zkontroluje, zda je na stránce nalezen určitý text.
ověřitElementPresent 1 Kontroluje přítomnost určitého prvku.
ověřit tabulku 2 Porovná obsah tabulky s očekávanými hodnotami.
waitForPageToLoad 1 Pozastaví provádění, dokud se stránka zcela nenačte.
waitForElementPresent 1 Pozastaví provádění, dokud nebude zadaný prvek přítomen.

Vytvořte skript ručně pomocí Firebug

Nyní znovu vytvoříme stejný testovací případ ručně, zadáním příkazů. Tentokrát budeme muset použít Firebug.

Krok 1

Vytvořte skript ručně pomocí Firebug

Krok 2: Klikněte na horní prázdný řádek v Editoru.

Vytvořte skript ručně pomocí Firebug

Do textového pole Příkaz zadejte „open“ a stiskněte Enter.

Vytvořte skript ručně pomocí Firebug

Krok 3

  • Navigovat Firefox na naši základní adresu URL a aktivujte Firebug
  • v Selenium V podokně editoru IDE vyberte druhý řádek (řádek pod příkazem „open“) a vytvořte druhý příkaz zadáním „assertTitle“ do pole Příkaz.
  • Neváhejte použít funkci automatického doplňování.

Vytvořte skript ručně pomocí Firebug

Krok 4

  • Ve Firebugu rozbalte tag pro zobrazení štítek.
  • Klikněte na hodnotu tag (což je „Vítejte: Mercury Prohlídky") a vložte jej do Target pole v Editoru.

Vytvořte skript ručně pomocí Firebug

Krok 5

  • Chcete-li vytvořit třetí příkaz, klikněte na třetí prázdný řádek v Editoru a do textového pole Příkaz zadejte „type“.
  • Ve Firebugu klikněte na tlačítko „Inspect“.

Vytvořte skript ručně pomocí Firebug

Klepněte na textové pole Uživatelské jméno. Všimněte si, že Firebug vám automaticky zobrazí kód HTML pro tento prvek.

Vytvořte skript ručně pomocí Firebug

Krok 6 Všimněte si, že textové pole Uživatelské jméno nemá ID, ale má atribut NAME. Jako lokátor tedy použijeme jeho JMÉNO. Zkopírujte hodnotu NAME a vložte ji do Target pole v Selenium SDI.

Vytvořte skript ručně pomocí Firebug

Ještě v Target textové pole, předpona „userName“ s „name=“, což znamená Selenium IDE by mělo cílit na prvek, jehož atribut NAME je „userName“.

Vytvořte skript ručně pomocí Firebug

Do textového pole Hodnota zadejte „invalidUN“. Selenium IDE. Váš testovací skript by nyní měl vypadat jako na obrázku níže. S třetím příkazem jsme hotovi. Poznámka: Místo invalidUN můžete zadat jakýkoli jiný textový řetězec. Ale Selenium IDE rozlišuje velká a malá písmena a hodnoty/atributy zadáváte přesně jako v aplikaci.

Vytvořte skript ručně pomocí Firebug

Krok 7

  • Chcete-li vytvořit čtvrtý příkaz, zadejte do textového pole Příkaz „type“.
  • Opět použijte tlačítko „Inspect“ na Firebugu, abyste získali lokátor pro textové pole „Password“.

Vytvořte skript ručně pomocí Firebug

  • Vložte atribut NAME („heslo“) do Target pole a předponu „name=“
  • Do pole Hodnota zadejte „invalidPW“. Selenium IDE. Váš testovací skript by nyní měl vypadat jako na obrázku níže.

Vytvořte skript ručně pomocí Firebug

Krok 8

  • Pro pátý příkaz zadejte do textového pole Příkaz „clickAndWait“. Selenium SDI.
  • Pomocí tlačítka „Inspect“ na Firebugu získáte lokátor pro tlačítko „Sign In“.

Vytvořte skript ručně pomocí Firebug

  • Vložte hodnotu atributu NAME (“login”) do Target textové pole a předponu „name=“.
  • Váš testovací skript by nyní měl vypadat jako na obrázku níže.

Vytvořte skript ručně pomocí Firebug

Krok 9: Uložte testovací případ stejným způsobem jako v předchozí části.

Pomocí tlačítka Najít

Tlačítko Najít v Selenium IDE se používá k ověření, zda to, co jsme vložili do Target textové pole je skutečně správným prvkem uživatelského rozhraní.

Použijme testovací případ Invalid_login, který jsme vytvořili v předchozích částech. Klikněte na libovolný příkaz s a Target vstup, řekněme, třetí příkaz.

Pomocí tlačítka Najít

Klikněte na tlačítko Najít. Všimněte si, že textové pole Uživatelské jméno v Mercury Stránka Tours se na sekundu zvýrazní.

Pomocí tlačítka Najít

To naznačuje Selenium IDE dokázalo správně detekovat a přistupovat k očekávanému prvku. Pokud tlačítko Najít zvýraznilo jiný prvek nebo žádný prvek, pak ve vašem skriptu musí být něco špatně.

Proveď příkaz

To vám umožní provést jakýkoli jednotlivý příkaz bez spuštění celého testovacího případu. Stačí kliknout na řádek, který chcete provést, a poté buď kliknout na „Akce > Provést tento příkaz“ na liště nabídek, nebo jednoduše stisknout „X“ na klávesnici.

Krok 1) Ujistěte se, že váš prohlížeč je zapnutý Mercury Domovská stránka prohlídek. Klikněte na příkaz, který chcete provést. V tomto příkladu klikněte na „type | uživatelské jméno | invalidUN“ řádek.

Proveď příkaz

Krok 2) Stiskněte „X“ na klávesnici.

Krok 3) Všimněte si, že textové pole pro uživatelské jméno se vyplní textem „invalidUN“

Proveď příkaz

Provádění příkazů tímto způsobem je vysoce závislé na stránce, která Firefox se aktuálně zobrazuje. To znamená, že pokud zkusíte výše uvedený příklad s domovskou stránkou Google zobrazenou místo Mercury Tours', pak váš krok selže, protože na domovské stránce Google není žádné textové pole s atributem „userName“.

Startovní bod

Počáteční bod je indikátor, který vypovídá Selenium IDE, na kterém se spustí provádění. Jeho klávesová zkratka je „S“.

Startovní bod

Ve výše uvedeném příkladu se přehrávání spustí na třetím řádku (zadejte | heslo | invalidPW). V jednom testovacím skriptu můžete mít pouze jeden počáteční bod.

Počáteční bod je podobný příkazu Execute Command v tom, že závisí na aktuálně zobrazené stránce. Pokud jste na špatné stránce, počáteční bod selže.

Body přerušení

Body zlomu jsou indikátory, které vypovídají Selenium IDE, kde se má test automaticky pozastavit. Klávesová zkratka je „B“.

Body přerušení

Žluté zvýraznění znamená, že aktuální krok čeká na vyřízení. To dokazuje Selenium IDE pozastavilo provádění tohoto kroku. V jednom testovacím případě můžete mít více bodů přerušení.

Krok

Umožňuje vám provádět následující příkazy jeden po druhém po pozastavení testovacího případu. Použijme scénář z předchozí části „Body zlomu“.

Krok

Před kliknutím na „Krok“.

Testovací případ se zastaví na řádku „clickAndWait | přihlásit se".

Krok Po kliknutí na „Krok“.

Tlačítko „clickAndWait | login” se spustí a zastaví se na další příkaz (verifyTitle | Přihlášení: Mercury Prohlídky).

Všimněte si, že další řádek je pozastaven, i když tam není žádný bod přerušení. To je hlavním účelem funkce Krok – provádí následující příkazy jeden po druhém, abyste měli více času na kontrolu výsledku po každém kroku.

Důležité věci, které je třeba vzít v úvahu při používání jiných formátů v zobrazení zdroje

Důležité věci, které je třeba vzít v úvahu při používání jiných formátů v zobrazení zdroje

Selenium IDE funguje dobře pouze s HTML – ostatní formáty jsou stále v experimentálním režimu. Je NENÍ doporučeno vytvářet nebo upravovat testy pomocí jiných formátů ve zdrojovém zobrazení, protože je stále potřeba hodně práce, aby byl stabilní. Níže jsou známé chyby od verze 1.9.1.

  • Nebudete moci provádět přehrávání ani přepnout zpět do zobrazení tabulky, dokud se nevrátíte k HTML.
  • Jediný způsob, jak bezpečně přidávat příkazy do zdrojového kódu, je zaznamenat je.
  • Když zdrojový kód upravíte ručně, při přepnutí na jiný formát bude celý ztracen.
  • I když můžete svůj testovací případ uložit v zobrazení zdroje, Selenium IDE jej nebude moci otevřít.

Doporučeným způsobem převodu testů Selenese je použití možnosti „Exportovat testovací případ jako…“ v nabídce Soubor, nikoli prostřednictvím zobrazení zdroje.

Shrnutí

  • Testovací skripty lze vytvořit buď záznamem, nebo ručním zadáním příkazů a parametrů.
  • Při ručním vytváření skriptů se k získání lokátoru používá Firebug.
  • Tlačítko Najít se používá ke kontrole, zda má příkaz přístup ke správnému prvku.
  • Zobrazení tabulky zobrazuje testovací skript ve formě tabulky, zatímco zobrazení zdroje jej zobrazuje ve formátu HTML.
  • Změna zobrazení zdroje na jiný formát než HTML je stále experimentální.
  • Při vytváření testů v jiných formátech nepoužívejte zobrazení zdroje. Místo toho použijte funkce exportu.
  • Parametry nejsou nutné neustále. Záleží na příkazu.
  • Existují tři typy příkazů:
    • Akce – přímo interaguje s prvky stránky
    • Přístupové prvky – „přečte“ vlastnost prvku a uloží ji do proměnné
    • Tvrzení – porovnává skutečnou hodnotu s očekávanou
  • Tvrzení mají tři typy:
    • Tvrdit – při neúspěchu se následující kroky již neprovádějí
    • Ověřit – při selhání se stále provádějí následující kroky.
    • WaitFor – projde, pokud se zadaná podmínka stane pravdivou během časového limitu; jinak selže
  • Nejběžnější příkazy jsou:
    • otevřít
    • click/clickAndWait
    • type/typeKeys
    • ověřitTitle/assertTitle
    • ověřit TextPresent
    • ověřitElementPresent
    • ověřit tabulku
    • waitForPageToLoad
    • waitForElementPresent