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