所謂模態窗口,就是指除非采取有效的關閉手段,用戶的鼠標焦點或者輸入光標將一直停留在其上的對話框。(說白了,就是彈出了模態窗口之后,后面的窗口無法被點擊)
這里有個demo頁面
http://www.robotframework.net/ ... alogA
對於window.showModalDialog()模式打開的新窗口 Eg.點擊“支付詳情”的“詳情”,出來一個新頁面。如何定位呢?單純的select window title=payDetail page 是定位不到新窗口的。解決辦法如下:
在web自動化測試,可能時常會碰到,但是如果普通的操作(click button)來打開模態窗口
會導致RF卡住,運行不下去。所以必須使用異步的js來打開模態窗口
核心的代碼就是 setTimeout(function(){document.getElementById("aa").click()},100)
具體的demo如下圖
一般情況下這樣就解決了。
有時候getElementById時,根本就找不到此元素的id,怎么辦??
idea: 創建一個靜態id,給標簽分配一個id元素
把新的id給到getElementById,如下:
setTimeout(function(){document.getElementById("aa").click()},100)
繼續發散思維一下: Click element xxx 換成 execute javascript document.getElementById('xxx').click() 基本換成javascript執行,都會輕松通過。如果元素沒有ID的話,要用css定位的話,我用的jquery來執行。 Execute javascript $(“css”).click()。

