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).
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. |
|
Krok 3
|
|
Krok 4
|
|
Krok 5
|
|
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ý. |
|
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. |
|
Krok 8
|
|
Krok 9
Všimněte si, že soubor byl uložen jako HTML. |
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.
Ú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í
|
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
|
Krok 2: Klikněte na horní prázdný řádek v Editoru. |
Do textového pole Příkaz zadejte „open“ a stiskněte Enter. |
Krok 3
|
Krok 4
|
Krok 5
|
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. |
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.
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“. 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. |
Krok 7
|
Krok 8
|
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.
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í.
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.
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“
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“.
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“.
Ž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“.
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