-1
我正在使用watir 2.0.1,當前如果腳本在url上運行,請在ABC瀏覽器的一個選項卡中輸入ABC.com,如果我打開相同的url ABC.com在瀏覽器的其他選項卡或新實例中,則執行將切換到打開的新選項卡。 因此我不能夠在相同的URL如何使用WATIR在同一個URL上同時執行兩個或多個執行腳本
這裏執行多個腳本/執行是Script1.rb在PROJECT1代碼,
require 'watir'
browser = Watir::Browser.new
browser.goto 'https://example.com'
browser = Watir::Browser.attach(:title, /ABC Application/)
browser.button(:text,"Register").click
sleep 2
browser.text_field(:id,"First_Name").set "Script_1_FirstName"
sleep 2
browser.text_field(:id,"Last_Name").set "Script_1_LastName"
等等...
雖然Script1在瀏覽器實例1中同時填寫ABC應用程序的註冊表單(在Script1輸入名字後說,我將觸發Script2.rb以進行註冊表單頁面的一些基本驗證。)
這裏是SCRIPT2。 RB Project2中,
require 'watir'
browser1 = Watir::Browser.new
browser1.goto 'https://example.com'
browser1 = Watir::Browser.attach(:title, /ABC Application/)
//At this time Script2 will execute properly in IE Instance2 as there is
//no Register button at IE instance1(Because Script1 is already on
//Register form page)
browser1.button(:text,"Register").click
//The movement Register form opens in IE instance2,Script1 finds same page
//elements on IE instance2 so currently Script1 is automatically start its
//execution on IE instance2 which will affect Script2 Execution.
if(browser1.text_field(:id,"First_Name").text.include("")
puts "First name field is blank by default"
else
raise "First name field is not blank by default"
if(browser1.text_field(:id,"Last_Name").text.include("")
puts "Last name field is blank by default"
else
raise "Last name field is not blank by default"
它不與相同的變量,我使用不同的項目來運行這些腳本。 – user3305286 2015-03-25 14:13:55
對不起,我想我誤解你的代碼示例。爲什麼要創建一個新的瀏覽器實例,「Watir :: Browser.new」,導航到一個頁面,然後嘗試附加到一個瀏覽器實例'Watir :: Browser.attach(:title,/ ABC Application /)'? – 2015-03-25 15:15:16
爲了使軟件測試目的的任何Web應用程序自動化,我使用上面的代碼創建一個新的瀏覽器實例,然後附加Web應用程序,然後使用此對象來自動化無線電,文本字段等網頁元素。 例如下面在SCRIPT1代碼爲點擊具有絲毫不差作爲ABC應用的web應用程序的單選按鈕 Script1.rb 需要「watir'browser =的Watir :: Browser.new browser.goto的」 https:// example.com' browser = Watir :: Browser.attach(:title,/ ABC Application /) browser.radio(:id,「Test」)。點擊 – user3305286 2015-03-25 16:22:33