Automatiserad webb testning i Ruby med Watir-Webdriver (6 / 7 steg)

Steg 6: Watir-Webdriver lathund



Här är en lista över de vanligaste Watir-Webdriver funktionen och deras användningsområden. Detta steg kan fungera som en snabbguide om du glömde det en metod som kallas eller vad den användes till. Detta steg kommer även metoder som inte täcktes i detta instructable men är lätt att räkna ut enligt deras namn. För mer djupgående information kan du använda webbplatsen rubydoc som visar all information relaterad till Watir-Webdriver (http://www.rubydoc.info/gems/watir-webdriver/0.6.11/Watir)

Webbläsare-objekt:

#Setup webbläsare föraren och skapa webbläsaren
#driver = Selenium::WebDriver.for: firefox < br > #driver = Selenium::WebDriver.for: krom
#driver = Selenium::WebDriver.for: dvs
webbläsaren = Watir::Browser.new(driver)

#Setup misc webbläsarinställningar
browser.driver.Manage.timeouts.Page_Load = 30
browser.window.resize_to(1000, 600)
browser.window.move_to (0, 0)

#Interact med webbläsaren
browser.goto ("http://website.com")
browser.refresh
browser.quit

TextBox objekt:

#Collections
browser.text_fields (: id = > "text")

#Set värde
browser.text_field(:ID => "text").set ("Detta är texten")

#Get värde
browser.text_field(:ID => "text").Value

#Clear värde
browser.text_field(:ID => "text").Clear

Knappobjekt:

#Collections
browser.buttons (: id = > "knappen")

#Check om knappen är aktiverad
browser.Button(:ID => "button").Enabled?

#Get knappar text
browser.Button(:ID => "button").text

#Click på knappen
browser.Button(:ID => "button").Click

CheckBox objektet:

#Collections
browser.CheckBoxes (: id = > "checkbox")

#Check kryssrutan
browser.CheckBox(:ID => "CheckBox").set
browser.CheckBox (: id = > "checkbox").set(true)

#Uncheck kryssrutan
browser.CheckBox(:ID => "CheckBox").Clear
browser.CheckBox (: id = > "checkbox").set(false)

#Check om är markerad
browser.CheckBox(:ID => "CheckBox").set?

ListBox objektet:

#Collections
browser.select_lists (: id = > "lista")

#Select från listan med namn
browser.select_list (: id = > "list").select("var")

#Select från listan med värde
browser.select_list (: id = > "list").select_value("var2")

#Check om värdet väljs
browser.select_list(:ID => "List").Selected? ("var2")

#Get aktuella valda värdet
sätter browser.select_list(:id => "list").value

#Iterate igenom alla värden och skriva ut dem
browser.select_list(:ID => "List").Options .each gör |i|
sätter "#{i.text}"
slutet

Radio-objekt:

#Collections
browser.Radios (: id = > "radio")

#Select knappen
browser.radio(:ID => "Radio").set

#Check är knappen markeras
browser.radio(:ID => "Radio").set?

Bildobjekt:

#Collections
browser.images (: src = > "img.gif")

#Check om bilden är laddad
browser.image (: src = > "img.gif").loaded?

#Get bild höjd
browser.image (: src = > "img.gif").height

#Get bildbredden
browser.image (: src = > "img.gif").width

#Click på bilden
browser.image (: src = > "img.gif").click

#Click på den första bilden på sidan
browser.images[0].Click

Div föremål:

#Collections
browser.divs (: klass = > "kropp")

#Get div text
browser.div(:Class => "Body").text

#Get text av andra div när den visas
browser.divs[1].when_present.text

Tabellobjekt:

#Collections
browser.tables (: id = > "bord")

#Get rad 1, col 1 text
browser.table (: id = > "bord") [0] [0] .text

#Get rad 1, col 2 text (alternitive)
browser.table(:ID => "table").TR {0} .cell {1} .text

#Get rad 2 hela texten
sätter browser.table (: id = > "bord") [1] .text

#Click på rad 4
sätter browser.table (: id = > "bord") [3] .click

#Get antalet kolumner
browser.table(:ID => "table").Row.Cells.length

#Get radantal
browser.table(:ID => "table").row_count
browser.table(:ID => "table").Rows Value

De allmänna

#[finns?] -Se om objektet finns
browser.text_field(:ID => "text").exists?

#[aktiverad?] -Se om objektet är aktiverat
browser.select_list(:ID => "List").Enabled?

#[nuvarande?] -Se om objektet är närvarande
browser.element(:ID => "e").present?

#[tag_name] - returnerade objekt taggnamn
browser.element(:ID => "e").tag_name

#[screenshot] - spara skärmbild av aktuell sida
browser.screenshot.Save("c:\\page.png")

#[to_subtype] - återgår HTML-objekt
browser.element(:ID => "button").to_subtype

#[index] - Klicka på 2: a bilden på sidan
browser.image(:index => 1).Click

# [loopar] - få namnen på alla text-fält
browser.text_fields.each |i|
sätter i.name
slutet

#Get namnet på första text-fält
sätter browser.text_fields[0].name

#Get namnet på andra text-fält
sätter browser.text_fields[1].name

Väntar på

#[wait_until_present] - gör ingenting förrän objektet är närvarande
browser.Button(:ID => "button").wait_until_present

#[when_present] - bara göra något när objektet är närvarande
browser.Button(:ID => "button").when_present .click
browser.Button(:ID => "button").when_present (10) .click

#[wait_while_present] - gör ingenting medan objektet är närvarande
browser.Button(:Value => "Submit").Click
browser.Button(:Value => "Submit").wait_while_present

Se Steg
Relaterade Ämnen

Automatiserad vattning av krukväxter med Intel Edison

Automatiserade vattna krukväxter med Intel Edison... En fukt Sensor känner av den låga fukthalten i jord och aktiverar vattenpumpen eller magnetventilen som styr flödet av vatten. När det krävs vattnet pumpas till växterna, sensorn automatiskt stanna...

CMS2CMS: Automatiserad Kunena till bbPress Switch med en Plugin

tror du att det är dags för dig att ändra forum programvara? Är du trött på använder samma gamla plattform? Har du någonsin överväga migration?Kunena är väl ändå en populär forum komponent för Joomla webbplats som kommer att berika dig hemsida med ny...

PHloat2 DIY surt vatten testning skulptur & kit med arduino

pHloatpHloat är en DIY kit som är gjorda för att användas tillsammans med en pre-ägda / befintliga arduino mikrokontroller. Dess syfte är att testa pH-nivåer i lokala floder, sjöar och vattendrag på grund av inflödet av luft- och vattenföroreningar s...

Automatiserad SOS

Detta projekt använder en Arduino hjärtat modul att upprepaen SOS-signal i morsekod. Vi börjar med attatt bygga banan. Nästa viinstallera Arduino IDE på en dator.Slutligen, vi skriver kod och ladda upp den till Arduino på hjärtat modul.Steg 1: Automa...

Cykel - drivna arduino vattenreningssystem (med UVC ljus)

Detta instructable visar hur att driva en UV-C vattenreningssystem med en cykel och arduino kontroll. En dynamo i den bakre delen av cykeln laddar ett batteri (som vi har från början ut redan för detta projekt) som kör arduino och ljuset.De flesta av...

Hur man bli av med halsont

trött på halsen får ont? Ja detta är vad jag gör! det fungerar bra och är lätt att göra. PS när jag får ont i halsen jag känner att jag är hängdeSteg 1: Steg 1: ingredienser Vad du behöver är:SaltVattenKopp (stor)Steg 2: Att sätta ihop Vad du gör är...

Arbetar med flera datorer (för studenter)

arbeta med flera datorer kan vara mycket svårt. Man vet aldrig vad filerna finns på datorn, du kan stöta på problem med flera version av samma fil, och som ett resultat, kan du förlora dina filer alla tillsammans eller åtminstone ha ditt liv förvandl...

Hur man gör en GSM läge Tracker med AdaFruit FONA och Arduino

IntroduktionI denna handledning som vi kommer att göra en webb ansluten plats logger med Adafruit FONA styrelsen, en Arduino och Sparkfun datatjänst. Det kommer att få sin position med hjälp av triangulering och skicka den till en online-databas med...

Snabbis idéer från en icke-kock.

Om du är en nörd, finns det mer än att beställa ut för pizza. Du kan använda din dator liksom andra resurser för att ha mer interesing mat. Du kan spara en massa pengar att göra maten själv och även imponera en framtida partner.Obs: använda pekplatta...

Bästa pepparkakor Cookie recept

Varje år jag brukar lämna min semester bakning till sista minuten, utan tid för recept testning, och sluta med bara sisådär pepparkakor. Men inte i år! Jag tog äntligen tid att testa och detta recept, utan tvekan, gör den bästa pepparkakor cookie jag...

Gitarr "Stoppa Box" remote volym och döda växla

Anmärkning: en ändring av ledningar har genomförts och folie beläggning har lagts till (05-28-13).Läggas till som källa för momentan stängda switch, tunga marine (båt) horn växla), $9, gratis USA frakthttp://www.Amazon.com/gp/product/B0002UENVA/ref=p...

Utlänningar från en undervattens plannet

dessa utlänningar kommer från en plannet omgiven av vatten därför gjort kostymer för att kunna utforska andra planeter utanför sitt naturliga element.Steg 1: Tillverka huvudet lappa Huvud bit ramen var gjord av 1/4 tum aluminium smälttråd. Bent och f...

En .NET Gadgeteer baserade jäsning temperatur Controller

I den här artikeln visar jag design och tillverkning av en pekskärm baserad automatiserad jäsning temperatur styrenhet med en kombination av kommersiella och anpassade hårdvara och mjukvara. Jag har varit ölbryggning i över 20 år med främst partiell...

DIY objektiv för Google kartong VR

Inledning:Sedan Google lanserade det är VR kartong senaste 2014., jag har läst några bra återkopplingar om den., och sista kan 2015., kartong VR stöder iOS., få VR kartong är billigaste sätt att uppleva virtuella verklighet. och jag frågade mig själv...

Ammo kan Boombox

jag ursprungligen kom över denna idé från en hemsida som heter http://macgyverisms.wonderhowto.com som i sin tur var kopplade till dustinbikes instructable för Ammo Box högtalare Efter lite forskning beslutat jag att göra min enhet bärbara med SLA (f...

BoxMarker för FireBrigades

Visa dina FireBrigade kompisar som lastbilar måste lämna sina lådor, när ett larm inträffar.Steg 1: Idé, Problem och lösning Förutom mitt jobb och andra aktiviteter, jag "m en kompis av våra lokala FireBrigade.Problem:Våra FireBrigade är inte en lite...

C64 USB Joystick Adapter

det finns några bra emulatorer för vintage videospel och datorer ute, till exempel WinVice för commodore hårdvara som C64, men hur ansluter du gamla joysticks till din PC, som konkurrens Pro (den ursprungliga en, med 9-polig D-sub för en original C64...

Robotic kamera Dolly System

Nyligen fick jag möjlighet att prova Servo stadens Actobotics byggsystem. Medan jag kunde ha använt det för att bygga åtskilliga saker, beslutat jag slutligen att göra ett programmerbara kamerasystem dolly. Den här enheten tillåter mig att skapa time...

Solpanel dubbla Management System (SP DMS)

Detta sakernas prototyp har två funktioner: 1) identitetsstöld förebyggande och 2) underhåll uppgift om solpaneler med en LinkIt och sensorer1) theft Prevention: för att uppnå detta vi använder GPS och GPRS funktioner i LinkIt en bräda med accelerome...