getting started with watir
Watir je zkratka pro „Testování webových aplikací v Ruby“. Naučte se, jak nainstalovat a používat Watir k vytváření a spouštění testovacích případů s příklady kódu:
Watir se vyslovuje jako voda. Jedná se o open-source sbírku knihoven Ruby. Jelikož se jedná o testování webových aplikací v Ruby, používá Ruby jako svůj skriptovací jazyk.
Co se naučíte:
- Instalace Watir
- Jak používat Watir: Vytváření a provádění testovacích případů
- Watir Příklady
- Čekání a speciální klávesy
- Regresní testování s Watirem
- Závěr
- Doporučené čtení
Instalace Watir
Abyste mohli používat Watir, měli byste mít základní znalosti HTML, programování a Ruby. Protože je však Ruby sama o sobě snadno použitelná a srozumitelná, naučit se ji a používat Watira není tak obtížné.
Instalace Watir pro Windows
Existuje velká šance, že nemáte Ruby nainstalovanou v počítači. Chcete-li to zkontrolovat, otevřete Příkazový řádek a zadejte > ruby –v a stiskněte klávesu „Enter“ .
Obrázek 1: Pokud nemáte nainstalovanou Ruby, zobrazí se následující zpráva.
Pokud je nainstalován Ruby, získáte jeho verzi pomocí tohoto příkazu. Můžete kliknout tady stáhnout nejnovější verzi Ruby. Vyberte příslušnou verzi, samotný web doporučí Ruby 2.4.X. jako instalační program x64 nebo x86.
Obr. 2: Kliknutím na tuto verzi se zobrazí následující okno.
Obrázek 3: Klikněte na tlačítko Spustit stahování a zobrazí se následující okno.
Protože je proces stahování pozastaven za účelem pořízení snímku obrazovky, můžete vidět 'Start' tlačítko, jinak uvidíte 'Pauza' tlačítko zde. Nyní přejděte do umístění / složky, kde je váš soubor stažen (zde, jak vidíte na obrázku 2, je umístění: C: Users Ojas Downloads Programy ).
Obrázek 4: Spusťte soubor rubyinstaller-2.4.3-2-x64.exe.
Obr. 5: Vyberte možnost „Souhlasím s licencí“ a klikněte na tlačítko „Další“:
Obrázek 6: Klikněte na Instalovat a poté na Dokončit.
příklad testovacího případu pro ruční testování
Výše uvedená obrazovka se zeptá „Které komponenty se mají nainstalovat?“ Pokud si nejste jisti, jednoduše stiskněte klávesu Enter a systém nainstaluje všechny tři součásti, tj. Základní instalace MSYS2, aktualizace systému MSYS2 a vývojový nástroj MSYS2 a MINGW .
Nástroje MSYS2 jsou nezbytné ke kompilaci rubínových drahokamů na bázi C. MSYS2 lze také nainstalovat ručně.
Obr. 7: MSYS2 nainstalován ručně
Instalace všech komponent bude trvat několik minut. Stačí zavřít příkazový řádek a znovu jej otevřít. Poté zadejte> ruby –v a stiskněte klávesu Enter. Pokud se zobrazí následující zpráva, znamená to, že Ruby je úspěšně nainstalován.
ruby 2.4.3p205 (revize 61247 ze dne 2017-12-14) (x64-mingw32)
Software napsaný v Ruby se nazývá Ruby Gems. Nainstalovali jsme Ruby, ale existuje možnost, že možná nebudeme mít nejnovější verzi těchto Ruby Gems. Nejprve tedy musíme zkontrolovat tuto verzi drahokamu pomocí příkazu> gem –v, zde máme verzi 2.6.14.
Aktualizujeme jej pomocí příkazu:
> aktualizace drahokamů - systém
Po dokončení dostaneme zprávu - Aktualizován systémový software RubyGems .
Nyní musíme nainstalovat drahokam webového ovladače Selenium pomocí příkaz (> gem nainstaluje selenium-webový ovladač –no-ri –no-rdoc).
Nainstaluje se a zobrazí se následující zpráva:
Načítání: selenium-web driver-3.11.0.gem (100%)
Úspěšně nainstalován selen-webový ovladač-3.11.0
1 klenot nainstalován
** Pokud se zobrazí nějaká zpráva brány Windows Firewall, zavřete toto okno.
Teď potřebujeme IEDriverServer. Klepněte na tady stáhnout IEDriverServer
Klikněte na první odkaz a poté vyberte příslušnou verzi pro váš počítač, tj. Stáhne se soubor Win32 nebo X64.Zip. Chcete-li vědět, kam tyto soubory extrahovat, postupujte podle následujících kroků:
Přejděte do příkazového řádku.
Zadejte> CESTA
Obr : Získá se následující výsledek:
Extrahujeme naše soubory na PATH C: Ruby24-x64 bin . Extrahujte soubory do cesty ke složce Ruby. Nyní zadejte do příkazového řádku irb a stiskněte klávesu ENTER. IRB znamená Interactive Ruby.
> vyžadovat „selenium-webdriver“
Získáte => true
> browser = Selenium :: WebDriver.for: internet_explorer
Váš prohlížeč IE se otevře a zobrazí se zpráva: „Toto je počáteční úvodní stránka serveru WebDriver“ .
Chcete-li otevřít webovou stránku www.google.co.in v prohlížeči IE, zadejte do příkazu:
> prohlížeč. získat „https://www.google.co.in/“
Následující tabulka obsahuje seznam ovladačů příslušných prohlížečů a jejich odkazy ke stažení. Stejným postupem postupujte i pro ostatní ovladače a vysvětlete to pro IEDriverServer.
propojený seznam v C ++
Název prohlížeče | Jméno řidiče | Odkaz ke stažení | |
---|---|---|---|
:Průhledná | : f8 | :vlevo, odjet | : numpad7 |
Firefox | řidič gekonů | https://github.com/mozilla/geckodriver/releases | |
Google Chrome | chromedriver | http://chromedriver.storage.googleapis.com/index.html | |
Safari | - | Safari nefunguje pro Windows |
Instalace Watir:
- Přejděte na příkazový řádek.
- Zadejte příkaz> gem install watir
- Stiskněte tlačítko Enter.
Watir bude nainstalován. Nyní můžete začít používat Watir.
Instalace Watir Pro Mac
Kroky:
- Instalace Ruby
- Instalace Ruby gem
- Aktualizace Ruby gem
- Instalace selenového WebDriveru
- Instalace ovladače IE / Gecko Driver / Chrome Driver / safari driver
- Instalace Watir
Ruby na Mac není třeba instalovat. Proto jsme již provedli první krok. Ušetří to spoustu času. Verze ruby zkontrolujeme příkazem: $ruby -v
Tady to máme jako - ruby 2.0.0p648 (2015-12-16 revize 53162) (universal.x86_64-darwin16)
Nyní zkontrolujeme verzi rubínu: gem $ gem -v
Tady to je - 2.0.14.1. Aktualizujeme naše rubínové drahokamy pomocí příkazu- $ sudo gem update —systém. Nainstalujeme Selenium WebDriver pomocí příkazu: $ sudo gem install selenium-webdriver —no-ri —no-rdoc
Při instalaci webdriveru Selenium nebo aktualizaci ruby gem je možné získat následující chybu.
Chyba :Bezpečné načítání YAML není k dispozici. Upgradujte psych na verzi, která podporuje bezpečné načítání (> = 2,0).
Abychom tuto chybu vyřešili, musíme aktualizovat naši Ruby. K aktualizaci Ruby budeme nejprve potřebovat správce verzí Ruby, můžete ho získat pomocí tohoto příkazu ($ zvlnění -L https://get.rvm.io | bash -s stabilní) . Chcete-li nainstalovat nejnovější verzi typu Ruby ($ rvm nainstalovat ruby - (verze)) . Jakmile je rvm zcela nainstalován, restartujte terminál.
Nyní musíme tuto nejnovější verzi nastavit tak, jak ji chceme používat. Zadejte tedy ($ rvm use ruby-2.4.1). Chcete-li nastavit tuto verzi jako výchozí, použijte následující příkaz: ($ rvm — výchozí použití 2.4.1). Nyní znovu aktualizujte rubínové drahokamy. Zkuste nainstalovat selen-webdriver. Pokud se vám nějaká chyba objeví znovu, možná budete potřebovat vývojářské nástroje příkazového řádku, proto ji nainstalujte pomocí ($ git —version). Jak již máme, nenainstalovali jsme jej zde.
K instalaci ovladače chrome potřebujeme homebrew ($ ruby -e “$ (curl -fsSL https://raw.github.com/mxcl/homebrew/go/install) “).
Nainstalujeme si ovladač Chrome. ($ brew install chromedriver).
Zkuste tento kód v terminálu:
$irb >require “selenium-webdriver” You will get >true browser=Selenium::WebDriver.for:chrome browser.get “https://www.google.co.in”
S tímto kódem by se měl váš prohlížeč otevřít na zadané webové stránce. Nyní nainstalujeme Watir: ($ gem install water).
Proces instalace je hotový. Nyní můžete začít psát testovací skripty.
Jak používat Watir: Vytváření a provádění testovacích případů
Testovací případy nebo skripty můžete psát v programu Poznámkový blok. Uložte tento soubor s příponou .rb.
Příklad: Předpokládejme, že jste vytvořili jeden soubor test.rb. Chcete-li spustit tento skript / program, poklepejte na tento soubor nebo postupujte podle níže uvedených kroků. Předpokládejme, že jste tento soubor uložili na jednotku C. Adresa tohoto souboru je „C Ruby_Programs“.
>cd >cd Ruby_Programs >ruby test.rb
Stiskněte tlačítko ENTER. Chcete-li tento soubor upravit, klepněte na něj pravým tlačítkem a vyberte možnost Otevřít v.
# 1) Spouštění testovacích případů paralelně
Pokud jste napsali dva testovací případy a uložili je jako test1.rb a test2.rb. Chcete-li spustit tyto dva testy paralelně, musíte postupovat podle těchto kroků:
Obr.9: Přejděte na příkazový řádek a zadejte (> instalace drahokamů paralelní_testy). Zobrazí se následující zpráva.
Poté spusťte testy.
>parallel_test test1.rb test2.rb
# 2) Vytvoření testovací sady
Pokud chcete, aby několik testů běželo často a přidali je do testovací sady, pak je zde kód.
Kód:
require 'minitest/autorun' require 'C:/Ruby_Programs/test3' # This is the path of your test file which you want to include. require 'C:/Ruby_Programs/test4' # This is the path of your test file which you want to include.
Uložte tento soubor jako testSuite.rb a spusťte
C: Ruby_Programs> ruby testSuite.rb
Watir Příklady
Příklad 1:
Jelikož se jedná o náš první program, otevřeme pouze webovou stránku „Google.co.in“ a klikneme na odkaz Gmail.
Kód:
require 'watir' test_site = 'https://www.google.co.in/' browser = Watir::Browser.new:firefox browser.goto test_site browser.link(:href, 'https://mail.google.com/mail/?tab=wm').click puts “Test Executes” browser.close
Porozumění Kodexu
# 1) require 'watir' # Zde říkáme, že pro spuštění našeho programu budeme potřebovat knihovnu Watir, která se načte tímto příkazem.
# 2) test_site = “https://www.google.co.in/” # Zde deklarujeme proměnnou.
# 3) browser = Watir :: Browser.new: firefox # Zde otevíráme prohlížeč Firefox.
Watir :: Browser.new: internet_explorer # Pro Internet Explorer
Watir :: Browser.new: safari # Pro Safari
# 4) browser.goto test_site # Nebo browser.goto „https://www.google.co.in/“ # příkaz goto se používá k navigaci na zadaný web.
# 5) browser.link (: href, “https://mail.google.com/mail/?tab=wm htt).click # Zde klikneme na odkaz na Gmail. Hypertextový odkaz je v kódu označován jako odkaz a k vyhledání tohoto hypertextového odkazu používáme jeho vlastnost „href“.
# 6) umístí „Testováno“ # Tento řádek na příkazový řádek napíše řetězec „Testováno“.
# 7) browser.close # Tento řádek zavře prohlížeč.
Pokud nezmiňujeme názvy prohlížečů, zapíšeme do našeho kódu pouze tento řádek (Watir :: Browser.new), Watir otevře prohlížeč Chrome, protože Chrome je výchozí prohlížeč pro Watira.
Příklad 2:
V tomto příkladu otevřeme webovou stránku www.google.co.in. Poté prohledáme text „Ruční testování“. Dále se vrátíme na domovskou stránku a klikneme na odkaz „Gmail“.
Kód:
require 'watir' browser=Watir::Browser.new:firefox browser.goto 'https://www.google.co.in' if browser.title.include? 'Google' browser.text_field(:class, 'gsfi').set 'Manual Testing' browser.button(:name, 'btnK').click if browser.text.include? 'Manual Testing is a process of finding out the defects' puts 'Title of webpage '+ browser.title browser.img(:src, “/images/branding/googlelogo/2x/googlelogo_color_120x44dp.png').click browser.link(:class, 'gb_P').click else puts 'Wrong result found' end else puts 'Either you are on wrong page or page not found' end puts 'Now title of webpage '+ browser.title browser.close puts 'Test Executed Successfully'
Porozumění Kodexu:
# 1) browser.goto https://www.google.co.in - Zde přecházíme na zadaný web.
# 2) pokud je prohlížeč.title.include? „Google“ - Zde kontrolujeme název webové stránky, zda je podle očekávání nebo ne. V jiné části tohoto „Pokud“ dáváme toto prohlášení „Buď jste na nesprávné stránce, nebo stránka nenalezena“. Tento příkaz se zobrazí na příkazovém řádku.
# 3) browser.text_field (: class, “gsfi”). Set “Manual Testing” - Zde zadáváme text “Manual Testing” do vyhledávacího textového pole.
# 4) browser.button (: name, “btnK”). Click - Zde klikáme na tlačítko “Google Search”.
# 5) if browser.text.include? „Ruční testování je proces zjišťování vad“ - Nyní kontrolujeme text na webové stránce, abychom ověřili, zda jsme dostali správný výsledek vyhledávání. V části „Jinak“ tohoto prohlášení „Pokud“ vkládáme prohlášení „Byl nalezen nesprávný výsledek“.
# 6) umístí „Název webové stránky“ + browser.title - Zde zobrazujeme název webové stránky na příkazovém řádku.
# 7) browser.img (: src, “/images/branding/googlelogo/2x/googlelogo_color_120x44dp.png„). Klik - Zde kliknutím na obrázek přejdete zpět na domovskou stránku.
# 8) browser.link (: class, “gb_P”). Click - Zde klikáme na odkaz na Gmail.
# 9) vloží „Nyní název webové stránky“ + browser.title - Nyní opět zadáváme název webové stránky do příkazového řádku. Měl by to být název stránky Gmailu.
# 10) browser.close - Zde zavíráme prohlížeč.
# 11) uvádí „Test úspěšně proveden“. Abychom se ujistili, že jsou všechny kroky provedeny správně, uvedeme toto prohlášení na příkazový řádek.
co je testování kouře a testování zdravého rozumu
Příklad 3:
V tomto příkladu se pokusíme použít maximum příkazů Watir, abyste pochopili, jak je používat. Uvidíme také jeho popis spolu s kódem.
Kód s komentáři:
require 'watir' browser=Watir::Browser.new:chrome browser.goto “http://watir.com/examples/forms_with_input_elements.html” #Here we will see how to insert data in text field. t1=browser.text_field id: 'new_user_first_name' t1.set 'Testing' t2=browser.text_field id: 'new_user_last_name' t2.set “testdata' #Here we will see how to select data from select list. sl=browser.select_list id: 'new_user_languages' sl.select 'English' sl.selected_options #Here we will see how to select radio button. rd=browser.radio value: 'no' rd.set chk=browser.checkbox value: 'cars' chk.set #Here we will see how to click button. btn=browser.button name: 'new_user_button_2' btn.click #This is an Explicit wait statement. This statement will make the program wait #until the particular event happens. Watir::Wait.until {browser.text.include? 'submit'} # Here I used this if statement because this is a test webpage and nothing is #happening after clicking the button. So just to show that button is clicked I used If #statement. if browser.text.include? 'submit' puts 'Data Submitted' else puts 'Data not yet submitted' end # This is an implicit wait statement. It will make your program to wait for 30 seconds compulsory. browser.driver.manage.timeouts.implicit_wait = 30 # You can send special keys to browser. There is a big list of these keys. browser.send_keys :page_up #Here we are taking the screenshot and saving it in a png file. browser.screenshot.save ‘screenshot1.png' browser.send_keys :page_down browser.screenshot.save ‘screenshot2.png' puts 'TestCase Executed' browser.close
Čekání a speciální klávesy
Watir podporuje dva typy příkazů čekání. První je explicitní čekání a druhé je implicitní čekání. Syntaxi obou jsme viděli ve výše uvedeném kódu, tj. V příkladu 3.
Speciální klávesy podporované Watirem: Nejprve uvidíme syntaxi používání těchto speciálních klíčů.
- browser.send_keys: page_up # Použili jsme to v našem kódu.
- browser.element.send_keys (: control, ‘c’),: zrušit
- browser.element.click (: enter,: space)
Následuje seznam speciálních klíčů, které jsou podporovány Watirem:
: vstoupit | : f1 | :řízení | : numpad0 |
:posun | : f2 | :všechno | : numpad1 |
:nula | : f3 | :pauza | : numpad2 |
:zrušení | : f4 | :uniknout | : numpad3 |
:Pomoc | : f5 | :prostor | : numpad4 |
: backspace | : f6 | :konec | : numpad5 |
: karta | : f7 | :Domov | : numpad6 |
:vrátit se | : f9 | :nahoru | : numpad8 |
:levý Shift | : f10 | :že jo | : numpad9 |
: left_control | : f11 | :dolů | :násobit |
: page_up | : f12 | :vložit | :přidat |
: page_down | : meta | :vymazat | :odčítat |
: arrow_left | :příkaz | :rovná se | : rozdělit |
Regresní testování s Watirem
Při regresním testování kontrolujeme, zda změny ovlivnily nezměněnou část nebo ne.
Za tímto účelem musíme znovu spustit naše předchozí testovací případy. Regresní testování bude časově náročné, pokud se provede ručně. Watir je jedním z nejlepších nástrojů pro regresní testování, protože psaní, údržba / aktualizace a provádění testovacích případů jsou snadné.
Závěr
Na závěr můžeme říci, že Watir se nástroj snadno naučí. Jedná se o nástroj s otevřeným zdrojovým kódem, a proto je nákladově efektivní a snadno použitelný. Ačkoli to nemá tolik výhod oproti Selenium WebDriver, je to lepší nástroj ve srovnání s mnoha jinými nástroji.
Podporuje programování, a proto je mnohem lepší než jiné nástroje pro nahrávání a přehrávání. Je to skutečně jeden z nejlepších nástrojů pro regresní testování.
Vyzkoušeli jste nástroj Watir?
Doporučené čtení
- 30+ nejlepších návodů na selen: Naučte se selen se skutečnými příklady
- Výukový program ChromeDriver Selenium: Testy selenového webdriveru v prohlížeči Chrome
- 180+ příkladů testování webových aplikací Testovací případy (ukázkový kontrolní seznam)
- Nejlepší 30+ nástroje pro testování webových aplikací v roce 2021 (úplný seznam)
- Kompletní průvodce testováním webových aplikací (Jak testovat web)
- Top 10 nejpopulárnějších nástrojů pro regresní testování v roce 2021
- Co je regresní testování? Definice, nástroje, metoda a příklad
- Nejlepší nástroje pro testování softwaru 2021 (QA Test Automation Tools)