Prohlásit a ověřit v Selenium IDE

⚡ Chytré shrnutí

Selenium IDE se skripty a příkazy umožňuje testerům zaznamenávat, upravovat a přehrávat akce prohlížeče pomocí Selenese – odlehčeného příkazového jazyka IDE. Tento článek se zabývá nahráváním skriptu, ručním psaním v Selenese, výběrem mezi Assert a Verify a laděním pomocí zarážek.

  • 🎬 První záznam: Selenium IDE automaticky zaznamenává kliknutí, vstupy a asserce během provozu prohlížeče.
  • 🧩 Selénský jazyk: Každý příkaz má název příkazu, volitelný cíl a volitelnou hodnotu – nikdy více než dva parametry.
  • 🛑 Tvrdit vs. ověřit: Funkce Assert zastaví test v případě selhání; funkce Verify zaznamená selhání a pokračuje dalším krokem.
  • 🔍 Tři typy příkazů: Akce interagují se stránkou, přístupové objekty čtou stav do proměnných, aserce kontrolují podmínky.
  • 🐞 Pomůcky pro ladění: Pomocí příkazů Execute Command, Start Point, Breakpoints a Step můžete zkontrolovat nebo znovu spustit jeden příkaz najednou.
  • 🤖 AI Boost: Nástroje pro testování umělé inteligence automaticky generují jazyky Selenese, navrhují robustní lokátory a převádějí skripty IDE do... Selenium Kód WebDriveru.

Jak prolomit (hacknout) heslo?

Budeme používat Mercury Webové stránky Tours jako naše testovaná webová aplikace. Jedná se o online systém rezervace letů, který obsahuje všechny prvky, které pro tento tutoriál potřebujeme. Jeho základní URL adresa je https://demo.guru99.com/test/newtours/.

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

Poznámka: Tento tutoriál používá klasický Firefox-pouze Selenium IDE 1.x s Firebugem pro zavedení základů Selenese. Firebug byl vyřazen v roce Firefox 57 a moderní Selenium IDE je nyní Chrome / Firefox / Rozšíření prohlížeče Edge s odlišným uživatelským rozhraním. Níže uvedené koncepty, typy příkazů a funkce ladění v Selenese se stále vztahují přímo na nové IDE.

Vytvořte skript nahráváním

Krok 1)

  • zahájit Firefox a Selenium SDI.
  • Zadejte hodnotu pro naši základní adresu URL: https://demo.guru99.com/test/newtours/.
  • Toggle tlačítko Nahrávat zapnuté (pokud není ve výchozím nastavení zapnuté).

Selenium IDE s nastavenou základní URL a zapnutým tlačítkem Nahrát

Krok 2) In Firefox, navigovat do https://demo.guru99.com/test/newtours/. Firefox by se mělo dostat na stránku podobnou té níže.

Mercury Domovská stránka Tours v Firefox

Krok 3)

  • Klikně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. Zobrazí se Selenium Kontextové menu IDE. Ne klikněte na libovolné hypertextové odkazy nebo obrázky.
  • Vybrat Zobrazit dostupné příkazy volba.
  • Vybrat assertTitle exact: Welcome: Mercury ToursTento příkaz kontroluje správnost názvu stránky.

Selenium Kontextová nabídka IDE s možností Zobrazit dostupné příkazy

Selenium Přidán editor IDE zobrazující příkaz assertTitle

Krok 4)

  • v Uživatelské jméno textové pole Mercury Prohlídky, zadejte neplatné uživatelské jméno invalidUNN.
  • v Heslo textové pole zadejte neplatné heslo invalidPWD.

Zadáno neplatné uživatelské jméno Mercury Formulář prohlídek

Zadáno neplatné heslo Mercury Formulář prohlídek

Krok 5) Klepněte na tlačítko Víkendové Sign-in . Firefox by se mělo zobrazit na stránce zobrazené níže.

Mercury Stránka s chybou přihlášení do Prohlídek

Krok 6) TogglStisknutím tlačítka Nahrávání ukončíte nahrávání. Váš skript by nyní měl vypadat jako níže uvedený.

Selenium Skript zaznamenaný v IDE po zastaveníping rekordér

Krok 7) Nyní uložte nahraný testovací skript. V Soubor menu, zvolte Uložit testovací případ, nebo stiskněte Ctrl+S.

Možnost Uložit testovací případ v Selenium Nabídka Soubor IDE

Krok 8)

  • Vyberte cílovou složku a poté ji pojmenujte modelový případ Neplatné přihlášení.
  • klikněte Uložit.

Uložit dialogové okno s názvem Selenium Testovací případ IDE Neplatné_přihlášení

Krok 9) Všimněte si, že soubor je uložen jako HTML.

Uložený soubor testovacího případu s příponou HTML

Krok 10) Zpět na Selenium IDE a klikněte na přehrávání tlačítko pro spuštění celého skriptu. Selenium IDE věrně přehrává každou akci.

Selenium Tlačítko přehrávání v IDE spouští nahraný skript

Úvod do Selenium Příkazy – Selenese

Selenese je skriptovací jazyk, který řídí Selenium IDE. Pravidla jsou jednoduchá:

  • Každý příkaz v jazyce Selenese přijímá až dva parametry – cíl a hodnota.
  • Parametry nejsou vždy povinné. Jejich počet závisí na příkazu.

Typy příkazů

Selenese seskupuje příkazy do tří kategorií. Každá z nich má ve skriptu jinou roli.

Akce Příkazy, které přímo interagují s prvky stránky. Příklad: click interaguje s prvkem, na který kliknete; type vloží hodnotu do textového pole a textové pole ji odešle zpět, čímž dochází k obousměrné interakci.
Příslušenství Příkazy, které ukládají hodnotu do proměnné. Příklad: storeTitle pouze přečte název stránky a uloží ho – na stránce nic nezmění.
Tvrzení Příkazy, které ověřují podmínku. Selenese nabízí tři varianty assercí: Tvrdit zastaví test při selhání, Ověřit si zaznamená selhání a pokračuje, a Čekat na pozastaví se, dokud se podmínka nestane pravdivou (výchozí časový limit je 30 sekund, konfigurovatelný v Možnosti > Obecné).

Potvrdit vs. Ověřit v Selenium

Níže uvedené diagramy porovnávají chování příkazu Assert za běhu s chováním příkazu Verify, když kontrola selže uprostřed testu.

Chování příkazu Assert stopping test na selhání

Ověření chování příkazu a pokračování testu po zaznamenané chybě

Společné příkazy

Příkaz Počet parametrů Description
otevřít 0-2 Otevře stránku pomocí adresy URL.
kliknout / kliknoutAčekat 1 Klikne na zadaný prvek.
typ / typeKeys 2 Zadává posloupnost znaků.
ověřitNázev / assertNázev 1 Porovná skutečný název stránky s očekávanou hodnotou.
ověřit TextPresent 1 Zkontroluje, zda se na stránce nachází zadaný text.
ověřitElementPresent 1 Kontroluje přítomnost specifické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 nedokončí.
waitForElementPresent 1 Pozastaví provádění, dokud se neobjeví zadaný prvek.

Vytvořte skript ručně pomocí Firebug

Nyní si stejný testovací případ znovu vytvořme ručně pomocí typing příkazy. Tento návod používá Firebug k prozkoumání lokátorů prvků. (V moderním Selenium IDE, použijte vestavěné DevTools prohlížeče místo Firebugu.)

Krok 1) Otevřená Firefox a Selenium IDE. Zadejte základní URL adresu. https://demo.guru99.com/test/newtours/Tlačítko Nahrávání musí být VYPNUTÉ.

Selenium Přepínač záznamu IDE ve vypnutém stavu

Krok 2) Klikněte na nejvyšší prázdný řádek v editoru.

Výběr prvního prázdného řádku v Selenium IDE editor

Typ open do textového pole Příkaz a stiskněte Enter.

Příkaz otevřít zadaný v Selenium Příkazové pole IDE

Krok 3) Navigovat Firefox na základní URL a aktivujte Firebug. V editoru IDE vyberte řádek pod open příkaz a typ assertTitlePro přesnost použijte návrhy automatického doplňování.

Návrhy automatického doplňování pro assertTitle v Selenium IDE

Krok 4) Ve Firebugu rozbalte <head> štítek pro odhalení <title>Klikněte na hodnotu názvu (Vítejte: Mercury Prohlídky) a vložte ho do Target pole v Editoru.

Kopírování názvu stránky z Firebugu do cílového pole IDE

Krok 5) Klikněte na třetí prázdný řádek v editoru a zadejte type v poli Příkaz. V aplikaci Firebug klikněte na Kontrolovat .

Přidává se příkaz typu Selenium IDE editor

Klikněte na textové pole Uživatelské jméno. Firebug automaticky zobrazí odpovídající prvek HTML.

Firebug kontroluje pole Uživatelské jméno na Mercury Prohlídky

Krok 6) Textové pole Uživatelské jméno nemá ID, ale má atribut NÁZEV. Zkopírujte hodnotu NÁZEV a vložte ji do Target oblasti Selenium SDI.

Kopírování atributu NAME pole Uživatelské jméno

Ještě v Target pole, předpona userName s name= so Selenium IDE cílí na element, jehož atribut NAME je userName.

Selenium Cílové pole IDE s lokátorem name=userName

Typ invalidUN v poli Hodnota. Váš skript nyní obsahuje třetí příkaz. Selenium IDE rozlišuje velká a malá písmena, proto zadávejte hodnoty a názvy atributů přesně tak, jak se zobrazují v aplikaci.

Zadejte příkaz targeting name=userName s hodnotou invalidUN

Krok 7) Přidejte čtvrtý příkaz pomocí typing type v poli Příkaz. Použijte Firebug Kontrolovat v textovém poli Heslo.

Firebug kontroluje pole Heslo

Vložte atribut NÁZEV (password) do Target pole, předpona s name=a nastavte hodnotu na invalidPW.

Selenium Skript IDE po přidání příkazu pro zadávání hesla

Krok 8) Přidejte pátý příkaz pomocí typing clickAndWait v poli Příkaz. Použijte Firebug Kontrolovat na tlačítku Přihlásit se.

Firebug kontroluje tlačítko Přihlásit se

Vložte hodnotu NÁZEV (login) do Target pole s name= předpona.

Konečný manuál Selenium IDE skript s pěti příkazy

Krok 9) Uložte testovací případ jako předtím.

Pomocí tlačítka Najít

Jedno Najít tlačítko v Selenium IDE potvrzuje, že hodnota zadaná v Target pole skutečně odpovídá prvku uživatelského rozhraní na stránce.

Otevřete Neplatné přihlášení testovací případ z předchozí části a klikněte na libovolný příkaz s Target záznam – například třetí příkaz.

Tlačítko Najít vedle Target pole v Selenium IDE

klikněte NajítTextové pole Uživatelské jméno na Mercury Stránka s prohlídkami se krátce zvýrazní.

Pole Uživatelské jméno je zvýrazněno v Firefox po kliknutí na Najít

Zvýraznění potvrzuje, že Selenium IDE správně vyřešilo lokátor. Pokud je zvýrazněn nesprávný prvek (nebo žádný prvek), je třeba lokátor ve skriptu opravit.

Proveď příkaz

Příkaz Execute Command spustí jeden řádek skriptu, aniž by spustil celý testovací případ. Klikněte na čáru, kterou chcete spustit, a vyberte buď Akce > Spustit tento příkaz z nabídky nebo stiskněte X na klávesnici.

Krok 1) Ujistěte se, že je prohlížeč zapnutý Mercury Domovská stránka Tours. Klikněte na linku, kterou chcete spustit – například type | userName | invalidUN.

Zadejte příkaz vybraný k provedení v Selenium IDE

Krok 2) Pro média X na klávesnici.

Krok 3) Textové pole s uživatelským jménem na stránce je vyplněno invalidUN.

Pole s uživatelským jménem vyplněné po spuštění příkazu

Spuštění příkazů tímto způsobem závisí na stránce, která Firefox se aktuálně zobrazuje. Spuštění stejného příkazu na domovské stránce Googlu by selhalo, protože neexistuje žádné pole s názvem userName zde.

Start Point

Výchozí bod říká Selenium IDE, od kterého řádku se má zahájit provádění. Klávesová zkratka je S.

Počáteční bod nastavený na Selenium Řádek skriptu IDE

Ve výše uvedeném příkladu se přehrávání spustí na třetím řádku (type | password | invalidPW). Testovací skript může mít pouze jeden počáteční bod. Stejně jako u příkazu Execute Command závisí počáteční bod na aktuálně zobrazené stránce a selže, pokud je stránka nesprávná.

Body přerušení

Body zlomu ukazují Selenium IDE pro automatické pozastavení testu na daném řádku. Klávesová zkratka je B.

Indikátor zarážky na Selenium Řádek skriptu IDE

Žluté zvýraznění zobrazuje pozastavený krok. Testovací případ může mít více zarážek.

Krok

Jedno Krok Příkaz spustí další řádek po pozastaveném testovacím případu. Použijte jej společně se zarážkami k procházení skriptu po jednotlivých příkazech.

Test se pozastavil na clickAndWait před kliknutím na krok

Před kliknutím na tlačítko Krok. Testovací případ je pozastaven na řádku clickAndWait | login.

Test pokračuje k dalšímu příkazu po kliknutí na Krok

Po kliknutí na tlačítko Krok. Jedno clickAndWait | login příkaz se spustí a provádění se pozastaví při dalším příkazu (verifyTitle | Sign-on: Mercury Tours). Další řádek se pozastaví i bez zarážky – to je účel příkazu Step.

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

Upozornění ohledně formátů zobrazení zdrojového kódu, které nejsou HTML

Selenium IDE 1.x funguje spolehlivě pouze s formátem HTML — ostatní formáty jsou stále experimentální. Vytváření nebo úprava testů v zobrazení zdrojového kódu, které není HTML, se nedoporučuje. Známé problémy od verze 1.9.1 jsou:

  • Nelze použít přehrávání ani přepnout zpět do tabulkového zobrazení bez návratu k HTML.
  • Nejbezpečnějším způsobem, jak přidat příkazy v zobrazení zdrojového kódu, je jejich zaznamenání.
  • Ruční úpravy v zobrazení zdrojového kódu se při přepnutí na jiný formát ztratí.
  • Testovací případ můžete uložit v zobrazení zdrojového kódu, ale Selenium IDE jej nemusí znovu otevřít.

Doporučený způsob převodu testů Selenese do jiných jazyků je Soubor > Exportovat testovací případ jako… nabídka, nikoli zobrazení zdroje.

Nejčastější dotazy

Dědictví Firefox-pouze Selenium IDE 1.x se již neudržuje. Moderní Selenium IDE je rozšíření prohlížeče Chrome, Firefoxa Edge ze selenium.dev s podporou nahrávání a přehrávání a exportu do kódu WebDriver.

Pro náročné předběžné podmínky, kde test nemůže pokračovat (například se musí nejdříve načíst správná stránka), použijte Assert. Verify použijte v případě, že pozdější kontroly stále přidávají hodnotu, i když ta aktuální selže, například při ověření více polí ve formuláři.

Firebug byl vyřazen z provozu v roce Firefox 57. Pro zachycení lokátorů XPath a CSS použijte vestavěné nástroje DevTools prohlížeče (F12) nebo rozšíření, jako jsou SelectorsHub, ChroPath nebo Playwright Inspector. Selenium skripty.

Ano. AI testovací platformy sledují uživatelské relace, generují příkazy v jazyce Selenese, navrhují robustní lokátory a převádějí nahrané skripty do Selenium Kód WebDriveru v Java, Pythonnebo JavaSkript s mnohem menší manuální námahou.

Generativní umělá inteligence zkoumá snímky DOM a navrhuje lokátory s menší pravděpodobností poškození – upřednostňuje atributy datového testování před křehkým XPath. Samoopravní agenti umělé inteligence automaticky přepisují lokátory po změnách uživatelského rozhraní, udržují...ping Selenium IDE skripty zelené.

Shrňte tento příspěvek takto: