getting started with watir
Watir is een afkorting voor ‘Web Application Testing In Ruby’. Leer hoe u Watir installeert en gebruikt om testcases te maken en uit te voeren met codevoorbeelden:
Watir wordt uitgesproken als water. Het is een open-sourcecollectie van Ruby-bibliotheken. Omdat het de Web Application Testing in Ruby is, gebruikt het Ruby als scripttaal.
Wat je leert:
- Installatie van Watir
- Hoe Watir te gebruiken: creatie en uitvoering van testcases
- Watir Voorbeelden
- Wacht en speciale sleutels
- Regressietesten met Watir
- Gevolgtrekking
- Aanbevolen literatuur
Installatie van Watir
Je moet basiskennis hebben van HTML, Programmeren en Ruby om Watir te gebruiken. Omdat Ruby zelf echter gemakkelijk te gebruiken en te begrijpen is, is het leren en gebruiken van Watir niet zo moeilijk.
Watir-installatie voor Windows
De kans is groot dat Ruby niet op uw computer is geïnstalleerd. Om dat te controleren, opent u de opdrachtprompt en typt u > ruby –v en druk op ‘Enter’
Fig 1: Als u Ruby niet heeft geïnstalleerd, krijgt u het volgende bericht.
Als Ruby is geïnstalleerd, krijgt u de versie met deze opdracht. U kunt klikken hier om de nieuwste versie van Ruby te downloaden. Selecteer de juiste versie, de website zal Ruby zelf aanbevelen 2.4.X als x64- of x86-installatieprogramma.
Fig 2: Als u op deze versie klikt, krijgt u het volgende venster.
Fig 3: Klik op de Start Download knop en je ziet het volgende venster.
Omdat het downloadproces is gepauzeerd om een schermafbeelding te maken, kunt u het 'Begin' knop, anders ziet u het 'Pauze' knop hier. Ga nu naar de locatie / map waar uw bestand is gedownload (hier, zoals u kunt zien in figuur 2, is de locatie: C: Gebruikers Ojas Downloads Programma's
Fig 4: Voer het bestand rubyinstaller-2.4.3-2-x64.exe uit.
Fig 5: Selecteer ‘Ik accepteer de licentie’ en klik op ‘Volgende’:
Fig 6: Klik op Installeren en vervolgens op Voltooien.
Op het bovenstaande scherm wordt gevraagd ‘Welke componenten moeten worden geïnstalleerd?’ Als u het niet zeker weet, drukt u op Enter en het systeem zal alle drie de componenten installeren, d.w.z. MSYS2-basisinstallatie, MSYS2-systeemupdate en MSYS2- en MINGW-ontwikkeltoolketen
MSYS2-tools zijn nodig om op C gebaseerde ruby-edelstenen te compileren. MSYS2 kan ook handmatig worden geïnstalleerd.
Fig 7: MSYS2 handmatig geïnstalleerd
Het duurt enkele minuten om alle componenten te installeren. Sluit gewoon de opdrachtprompt en open deze opnieuw. Typ vervolgens> ruby –v en druk op Enter. Als u het volgende bericht krijgt, betekent dit dat Ruby met succes is geïnstalleerd.
ruby 2.4.3p205 (2017-12-14 revisie 61247) [x64-mingw32]
Software die in Ruby is geschreven, wordt Ruby Gems genoemd. We hebben Ruby geïnstalleerd, maar het is mogelijk dat we niet de laatste versie van deze Ruby Gems hebben. Daarom moeten we eerst deze edelsteenversie controleren met het commando> gem –v, hier hebben we versie 2.6.14.
We zullen het updaten met behulp van het commando:
> edelsteen update –systeem
Als we klaar zijn, krijgen we het bericht- RubyGems-systeemsoftware bijgewerkt
Nu moeten we Selenium web driver gem installeren met het commando [> gem installeer het selenium-webstuurprogramma –no-ri –no-rdoc].
Het wordt geïnstalleerd en u krijgt het volgende bericht:
Ophalen: selenium-web driver-3.11.0.gem (100%)
Selenium-web driver-3.11.0 is geïnstalleerd
1 edelsteen geïnstalleerd
** Als u een Windows Firewall-bericht krijgt, sluit u dat venster.
Nu hebben we IEDriverServer nodig. Klik hier om IEDriverServer te downloaden
hoe te openen .xml-bestand
Klik op de eerste link en selecteer vervolgens de juiste versie voor uw computer, d.w.z. Win32 of X64. Zip-bestand wordt gedownload. Volg de onderstaande stappen om te weten waar u deze bestanden kunt uitpakken:
Ga naar de opdrachtprompt.
Typ> PAD
Afb 8 Het volgende resultaat wordt verkregen:
We zullen onze bestanden uitpakken naar PATH C: Ruby24-x64 bin Pak bestanden uit naar uw Ruby-mappad. Typ nu irb in de opdrachtprompt en druk op ENTER. IRB staat voor Interactive Ruby.
> vereisen 'selenium-webdriver'
U krijgt => waar
> browser = Selenium :: WebDriver. voor: internet_explorer
Uw IE-browser wordt geopend en u ziet het bericht: 'Dit is de eerste startpagina voor de WebDriver-server'
Om de webpagina www.google.co.in in de IE-browser te openen, typt u de opdracht:
> browser. verkrijg 'https://www.google.co.in/'
De volgende tabel geeft u een lijst met stuurprogramma's van de respectievelijke browsers en hun downloadlinks. Volg dezelfde procedure voor de andere stuurprogramma's en ook uitgelegd voor IEDriverServer.
c # interviewvragen en antwoorden
Browser naam | Naam van de bestuurder | Download link | |
---|---|---|---|
:Doorzichtig | : f8 | :links | : numpad7 |
Firefox | gekko stuurprogramma | https://github.com/mozilla/geckodriver/releases | |
Google Chrome | chromedriver | http://chromedriver.storage.googleapis.com/index.html | |
Safari | | Safari werkt niet voor Windows |
Watir Installatie:
- Ga naar de opdrachtprompt.
- Typ command> gem install watir
- Druk op de enter-knop.
Watir wordt geïnstalleerd. Nu kunt u Watir gaan gebruiken.
Watir Installatie Voor Mac
Stappen:
- Ruby installeren
- Ruby gem installeren
- Ruby-edelsteen bijwerken
- Selenium WebDriver installeren
- IE Driver / Gecko Driver / Chrome Driver / Safari-stuurprogramma installeren
- Watir installeren
Het is niet nodig om Ruby op Mac te installeren. Daarom hebben we de eerste stap al behandeld. Het scheelt veel tijd. We zullen de versie van ruby controleren met het commando: $ ruby -v
Hier hebben we het als - ruby 2.0.0p648 (2015-12-16 revisie 53162) [universal.x86_64-darwin16]
Nu zullen we de versie van ruby controleren: edelsteen $ edelsteen -v
Hier is het - 2.0.14.1. We zullen onze robijnrode edelstenen bijwerken met de opdracht- sudo gem update —systeem. We zullen Selenium WebDriver installeren met de volgende opdracht: $ sudo gem installeer selenium-webdriver —no-ri —no-rdoc
Het is mogelijk dat u de volgende foutmelding krijgt tijdens het installeren van Selenium webdriver of het updaten van de ruby edelsteen.
Fout YAML veilig laden is niet beschikbaar. Upgrade de psych naar een versie die veilig laden ondersteunt (> = 2.0).
Om deze fout op te lossen, moeten we onze Ruby updaten. Om Ruby bij te werken, hebben we eerst Ruby-versiemanager nodig, je kunt het downloaden met deze opdracht [$ curl -L https://get.rvm.io bash -s stabiel] Om de nieuwste versie van het Ruby-type te installeren rvm ruby installeren - [versie]] Start de terminal opnieuw op zodra de rvm volledig is geïnstalleerd.
Nu moeten we deze nieuwste versie instellen zoals we deze willen gebruiken. Dus typ [$ rvm use ruby-2.4.1]. Gebruik het volgende commando om deze versie als de standaardversie in te stellen: [$ rvm —default use 2.4.1]. Update nu opnieuw robijnrode edelstenen. Probeer selenium-webdriver te installeren. Als je opnieuw een foutmelding krijgt, heb je mogelijk opdrachtregelontwikkelaarstools nodig, dus installeer het met [$ git —version]. Zoals we al hebben gedaan, hebben we het hier niet geïnstalleerd.
Om de Chrome-driver te installeren, hebben we homebrew [$ ruby -e “$ (curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)
Laten we de Chrome-driver installeren. [$ brew install chromedriver].
Probeer deze code in terminal:
Met deze code zou uw browser moeten openen met de opgegeven webpagina. Nu gaan we Watir installeren: [$ gem install water].
We zijn klaar met het installatieproces. U kunt nu beginnen met het schrijven van testscripts.
Hoe Watir te gebruiken: creatie en uitvoering van testcases
U kunt de testcases of scripts schrijven in Kladblok. Sla dit bestand op met de extensie .rb.
Voorbeeld: Stel dat u één bestand test.rb heeft gemaakt. Dubbelklik op dit bestand om dit script / programma uit te voeren of volg de onderstaande stappen. Stel dat u dit bestand op de C-schijf heeft opgeslagen. Het adres van dit bestand is 'C Ruby_Programs'.
Druk op de ENTER-knop. Om dit bestand te bewerken, klikt u met de rechtermuisknop op dit bestand en selecteert u de optie Openen met.
# 1) Testcases parallel uitvoeren
Als je twee testcases hebt geschreven en deze hebt opgeslagen als test1.rb en test2.rb. Om deze twee tests parallel uit te voeren, moet u deze stappen volgen:
Afb.9: Ga naar de opdrachtprompt en typ [> gem install parallel_tests]. U ziet het volgende bericht.
Voer vervolgens uw tests uit.
# 2) Test Suite maken
Als u een paar tests regelmatig wilt uitvoeren en deze wilt toevoegen aan de testsuite, dan is hier de code ervoor.
Code:
Sla dit bestand op als testSuite.rb en voer het uit
C: Ruby_Programs> ruby testSuite.rb
Watir Voorbeelden
Voorbeeld 1:
Aangezien dit ons eerste programma is, openen we gewoon de webpagina 'Google.co.in' en klikken op de Gmail-link.
Code:
De code begrijpen
# 1) vereisen ‘watir’ # Hier vertellen we dat we de Watir-bibliotheek nodig hebben om ons programma uit te voeren en het zal worden geladen met deze verklaring.
# 2) test_site = 'https://www.google.co.in/' # Hier declareren we de variabele.
# 3) browser = Watir :: Browser.new: firefox # Hier openen we de Firefox-browser.
Watir :: Browser.new: internet_explorer # Voor Internet Explorer
Watir :: Browser.new: safari # Voor Safari
# 4) browser.goto test_site # Of browser.goto “https://www.google.co.in/” # goto commando wordt gebruikt om naar de gespecificeerde website te navigeren.
# 5) browser.link (: href, 'https://mail.google.com/mail/?tab=wm' ).click # Hier klikken we op de Gmail-link. De hyperlink wordt in de code een link genoemd en we gebruiken de eigenschap 'href' om deze hyperlink te lokaliseren.
# 6) zet 'Test Executed' # Deze regel zal de string 'Test Executed' op de opdrachtprompt schrijven.
# 7) browser.close # Deze regel zal de browser sluiten.
Als we de browsernamen niet vermelden, zullen we alleen deze regel in onze code [Watir :: Browser.new] schrijven. Watir zal de Chrome-browser openen aangezien Chrome de standaardbrowser is voor Watir.
Voorbeeld 2:
In dit voorbeeld openen we de webpagina www.google.co.in. Vervolgens zoeken we de tekst 'Handmatig testen'. Vervolgens gaan we terug naar de startpagina en klikken op de link 'Gmail'.
Code:
De code begrijpen:
# 1) browser.goto https://www.google.co.in - Hier navigeren we naar de opgegeven website.
# 2) als browser.title.include? 'Google' - Hier controleren we of de titel van de webpagina is zoals verwacht of niet. In het andere deel van deze ‘Als’ plaatsen we deze verklaring ‘Of je bent op de verkeerde pagina of de pagina is niet gevonden’. Deze verklaring wordt weergegeven op de opdrachtprompt.
# 3) browser.text_field (: class, 'gsfi'). Set 'Manual Testing' - Hier voeren we de tekst 'Manual Testing' in het zoektekstvak in.
# 4) browser.button (: naam, “btnK”). Klik - Hier klikken we op de “Google Zoeken” knop.
# 5) als browser.text.include? 'Handmatig testen is een proces om de defecten op te sporen' - Nu controleren we de tekst op de webpagina om te zien of we het juiste zoekresultaat hebben. In het ‘Else’ deel van deze ‘If’ -verklaring plaatsen we de verklaring “Verkeerd resultaat gevonden”.
beste youtube converteren naar mp3-app
# 6) plaatst 'Titel van webpagina' + browser.title - Hier tonen we de titel van de webpagina op de opdrachtprompt.
# 7) browser.img (: src, “/images/branding/googlelogo/2x/googlelogo_color_120x44dp.png ”).click - Hier klikken we op de afbeelding om terug te gaan naar de homepagina.
# 8) browser.link (: class, 'gb_P'). Klik - Hier klikken we op de Gmail-link.
# 9) plaatst 'Nu de titel van de webpagina' + browser.title - Nu zetten we opnieuw de titel van de webpagina op de opdrachtprompt. Het zou de titel van de Gmail-pagina moeten zijn.
# 10) browser.close - Hier sluiten we de browser.
# 11) plaatst “Test succesvol uitgevoerd”. Om er zeker van te zijn dat alle stappen correct worden uitgevoerd, plaatsen we deze instructie op de opdrachtprompt.
Voorbeeld 3:
In dit voorbeeld zullen we proberen om maximale Watir-commando's te gebruiken, zodat u begrijpt hoe u ze moet gebruiken. We zullen ook de beschrijving zien samen met de code.
Code met opmerkingen:
Wacht en speciale sleutels
Er zijn twee soorten wachtinstructies die door Watir worden ondersteund. De eerste is een expliciete wachttijd en de tweede is een impliciete wachttijd. We hebben de syntaxis voor beide gezien in de bovenstaande code, d.w.z. Voorbeeld 3.
Speciale sleutels ondersteund door Watir: Ten eerste zullen we de syntaxis zien voor het gebruik van deze speciale sleutels.
- browser.send_keys: page_up # We hebben dit in onze code gebruikt.
- browser.element.send_keys [: control, ‘c’],: annuleren
- browser.element.click (: enter,: spatie)
Hieronder volgt een lijst met de speciale sleutels die door Watir worden ondersteund:
: invoeren | : f1 | :controle | : numpad0 |
:verschuiving | : f2 | :alles | : numpad1 |
:nul | : f3 | :pauze | : numpad2 |
:annuleren | : f4 | :ontsnappen | : numpad3 |
:helpen | : f5 | :ruimte | : numpad4 |
:backspace | : f6 | :einde | : numpad5 |
: tabblad | : f7 | :huis | : numpad6 |
: terug | : f9 | : omhoog | : numpad8 |
:linker shift | : f10 | :Rechtsaf | : numpad9 |
: left_control | : f11 | : naar beneden | :vermenigvuldigen |
:pagina omhoog | : f12 | : invoegen | :toevoegen |
: page_down | : meta | : verwijderen | :aftrekken |
: arrow_left | :opdracht | : is gelijk aan | : verdelen |
Regressietesten met Watir
Bij regressietesten controleren we of de wijzigingen het ongewijzigde onderdeel hebben beïnvloed of niet.
Daarvoor moeten we onze eerdere testcases opnieuw uitvoeren. Regressietesten zullen tijdrovend zijn als ze handmatig worden uitgevoerd. Watir is een van de beste tools voor regressietesten, aangezien het schrijven, onderhouden / bijwerken en uitvoeren van testcases eenvoudig is.
Gevolgtrekking
Concluderend kunnen we zeggen dat Watir gemakkelijk is om de tool te leren. Het is een open-source tool en daarom kosteneffectief en gemakkelijk te gebruiken. Hoewel het niet zoveel voordelen heeft ten opzichte van Selenium WebDriver, is het een betere tool in vergelijking met veel andere tools.
Het ondersteunt programmeren en is daarom veel beter dan andere opname- en afspeeltools. Het is inderdaad een van de beste tools voor regressietesten.
Heb je de Watir-tool geprobeerd?
Aanbevolen literatuur
- 30+ beste selenium-zelfstudies: leer selenium met echte voorbeelden
- ChromeDriver Selenium-zelfstudie: Selenium Webdriver-tests op Chrome
- 180+ voorbeeldtestcases voor het testen van webapplicaties (voorbeeldchecklist)
- Top 30+ testtools voor webapplicaties in 2021 (uitgebreide lijst)
- Volledige gids voor het testen van webapplicaties (Hoe een website te testen)
- Top 10 meest populaire tools voor regressietesten in 2021
- Wat is regressietesten? Definitie, hulpmiddelen, methode en voorbeeld
- Beste softwaretesttools 2021 [QA Test Automation Tools]