QTP測試多個瀏覽器視窗的解決方案
relevantcodes.com的《QTP: Working with Multiple Browser Applications》這篇文章介紹瞭如何測試多個瀏覽器視窗的情況:
http://relevantcodes.com/qtp-working-with-multiple-browser-applications-revised/
解決辦法的關鍵是根據什麼來區別出不同的瀏覽器視窗並儲存其控制程式碼。文章介紹了2類方法:
1、使用標題來識別出瀏覽器視窗並儲存瀏覽器視窗控制程式碼
2、最近開啟的瀏覽器視窗擁有的CreationTime屬性最大,可以據此來區別不同的瀏覽器視窗,並分別儲存它們的控制程式碼
把這些識別並儲存瀏覽器視窗控制程式碼的程式碼封裝在clsBrowser.cls檔案中的colBrowser類。主要函式有:
AddUsingTitle:Uses the "AddBrowser" method to add browsers to the collection using their Title Property
AddUsingCreationTime :Uses the "AddBrowser" method to add browsers to the collection using their CreationTime Property
AddLastOpen:Uses the "AddBrowser" method to add the last (most recent) open browser
Note: The last open browser always has the greatest CreationTime
使用例子如下所示(BrowserObject物件就是colBrowser類產生的物件):
'==================================
' Add Using Title
'==================================
SystemUtil.Run "iexplore.exe", "http://newtours.demoaut.com", "", "", 3 : Wait(4)
'Add the browser above using its title, and with the name DemoAUT
BrowserObject.AddUsingTitle "DemoAUT", ".*Mercury Tours.*"
SystemUtil.Run "iexplore.exe", "http://blog.csdn.net/testing_is_believing", "", "", 3 : Wait(4)
'Add the browser above using its title, and with the name RelevantCodes
BrowserObject.AddUsingTitle "MyBlog", "實用性測試(Pragmatistic Testing) - CSDN部落格"
With BrowserObject.Name("DemoAUT")
.WebEdit("name:=userName").Set "test"
.WebEdit("name:=password").Set "test"
.Image("name:=login").Click
.Sync
If .WebList("name:=fromPort").Exist(10) Then
.WebList("name:=fromPort").Select "Frankfurt"
.WebList("name:=fromMonth").Select "December"
.WebList("name:=toPort").Select "Paris"
.WebList("name:=toMonth").Select "December"
.WebRadioGroup("name:=servClass").Select "#1"
.WebList("name:=airline").Select "Unified Airlines"
.Image("name:=findFlights").Click
End If
End with
With BrowserObject.Name("MyBlog")
.Link("text:=《QTP自動化測試實踐》", "index:=").Click
End with
With BrowserObject
.Name("DemoAUT").Close
.Name("MyBlog").Close
End with
'==================================
' Add Last Open
'==================================
SystemUtil.Run "iexplore.exe", "http://newtours.demoaut.com", "", "", 3 : Wait(4)
'Add the above browser using AddLastOpen
BrowserObject.AddLastOpen "DemoAUT"
SystemUtil.Run "iexplore.exe", "http://blog.csdn.net/testing_is_believing", "", "", 3 : Wait(4)
'Add the above browser using AddLastOpen
BrowserObject.AddLastOpen "MyBlog"
With BrowserObject.Name("DemoAUT")
.WebEdit("name:=userName").Set "test"
.WebEdit("name:=password").Set "test"
.Image("name:=login").Click
.Sync
If .WebList("name:=fromPort").Exist(10) Then
.WebList("name:=fromPort").Select "Frankfurt"
.WebList("name:=fromMonth").Select "December"
.WebList("name:=toPort").Select "Paris"
.WebList("name:=toMonth").Select "December"
.WebRadioGroup("name:=servClass").Select "#1"
.WebList("name:=airline").Select "Unified Airlines"
.Image("name:=findFlights").Click
End If
End with
With BrowserObject.Name("MyBlog")
.Link("text:=《QTP自動化測試實踐》", "index:=").Click
End with
With BrowserObject
.Name("DemoAUT").Close
.Name("MyBlog").Close
End with
'==================================
' Add Using CreationTime
'==================================
SystemUtil.Run "iexplore.exe", "http://newtours.demoaut.com", "", "", 3 : Wait(4)
'Add the above browser using CreationTime 0, assuming no other browsers are open
BrowserObject.AddUsingCreationTime "DemoAUT", 0
SystemUtil.Run "iexplore.exe", "http://blog.csdn.net/testing_is_believing", "", "", 3 : Wait(4)
'Add the above browser using CreationTime 1, assuming no other browsers are open prior to above
BrowserObject.AddUsingCreationTime "MyBlog", 1
With BrowserObject.Name("DemoAUT")
.WebEdit("name:=userName").Set "test"
.WebEdit("name:=password").Set "test"
.Image("name:=login").Click
.Sync
If .WebList("name:=fromPort").Exist(10) Then
.WebList("name:=fromPort").Select "Frankfurt"
.WebList("name:=fromMonth").Select "December"
.WebList("name:=toPort").Select "Paris"
.WebList("name:=toMonth").Select "December"
.WebRadioGroup("name:=servClass").Select "#1"
.WebList("name:=airline").Select "Unified Airlines"
.Image("name:=findFlights").Click
End If
End with
'Added Index - November 06, 2009 - Credits: Clive Farrington
With BrowserObject.Name("MyBlog")
.Link("text:=《QTP自動化測試實踐》", "index:=").Click
End with
With BrowserObject
.Name("DemoAUT").Close
.Name("MyBlog").Close
End with
相關文章
- 使用window.open開啟新視窗被瀏覽器攔截的解決方案瀏覽器
- 瀏覽器的視窗位置和大小瀏覽器
- 突破瀏覽器域名併發限制的解決方案瀏覽器
- Edge瀏覽器被搜狗瀏覽器篡改的解決方法瀏覽器
- 瀏覽器支援ES6的最優解決方案瀏覽器
- 瀏覽器同源策略及 Ajax 跨域解決方案瀏覽器跨域
- angular瀏覽器相容性問題解決方案Angular瀏覽器
- 拖拽防止火狐瀏覽器開啟新視窗瀏覽器
- Fluid Browser for Mac(多工懸浮透明視窗瀏覽器)1.6啟用版UIMac瀏覽器
- 跨瀏覽器測試需要面臨哪些挑戰?跨瀏覽器測試工具分享瀏覽器
- 瀏覽器利用框架BeEF測試瀏覽器框架
- 主流瀏覽器相容性問題與解決方案瀏覽器
- CSS瀏覽器相容性的4個解決方案:瀏覽器CSS樣式初始化、瀏覽器私有屬性,CSS hack語法和自動化外掛CSS瀏覽器
- 重學瀏覽器(1)-多程式多執行緒的瀏覽器瀏覽器執行緒
- 解決ajax回撥window.open瀏覽器阻止彈窗問題瀏覽器
- 為什麼跨瀏覽器測試很重要?7款跨瀏覽器測試工具請查收!瀏覽器
- Mocha瀏覽器測試入門教程瀏覽器
- 滲透測試用的瀏覽器外掛瀏覽器
- 圖解瀏覽器的多程式渲染機制圖解瀏覽器
- 真正的讓iframe自適應高度 相容多種瀏覽器隨著視窗大小改變瀏覽器
- 檢視瀏覽器請求的session 瀏覽器怎麼檢視session瀏覽器Session
- win10 edge瀏覽器打不開視訊的解決方法Win10瀏覽器
- 新型BI解決方案:SaaS BI,在瀏覽器上分析資料瀏覽器
- windows10瀏覽器老是無法正常開啟解決方案Windows瀏覽器
- 瀏覽器攔截開啟新視窗情況總結瀏覽器
- 圖片在瀏覽器上從http變成https問題的解決方案瀏覽器HTTP
- 瀏覽器列印方案瀏覽器
- 禁止使用者開啟瀏覽器debug除錯視窗的方法瀏覽器除錯
- 自動化測試工具QTPQT
- 【軟體測試】你最常用的web測試-瀏覽器相容性測試Web瀏覽器
- 前端面試瀏覽器系列:瀏覽器快取前端面試瀏覽器快取
- python用selenium開啟瀏覽器後瀏覽器關閉---解決辦法Python瀏覽器
- SOA架構的域控制器測試解決方案架構
- 瀏覽器跨 Tab 視窗通訊原理及應用實踐瀏覽器
- 瀏覽器檢視Session瀏覽器Session
- 瀏覽器的視窗大小被改變時觸發的事件window.onresize瀏覽器事件
- 測試案例,Python +Selenium啟動不同瀏覽器Python瀏覽器
- 谷歌瀏覽器測試移動端網頁谷歌瀏覽器網頁
- 幾款瀏覽器相容性測試工具瀏覽器