Javascript 弹出窗口
JavaScript 对话框在 Web 应用程序中相当常见。
Watir 拥有一个内置库,用于处理这些对话框和捕获值。
Javascript 警告
# Check if alert is shown
browser.alert.exists?
# Get text of alert
browser.alert.text
# Close alert
browser.alert.ok
browser.alert.close
Javascript 确认
# Accept confirm
browser.alert.ok
# Cancel confirm
browser.alert.close
Javascript 提示
# Enter text to prompt
browser.alert.set 'Prompt answer'
# Accept prompt
browser.alert.ok
# Cancel prompt
browser.alert.close
备用方法
如果您在使用上述方法时遇到问题,您可以覆盖 JavaScript 函数以返回所需的值,这样当它们应该显示时,它们就不会显示!
# don't return anything for alert
browser.execute_script('window.alert = function() {}')
# return some string for prompt to simulate user entering it
browser.execute_script("window.prompt = function() {return 'my name'}")
# return null for prompt to simulate clicking Cancel
browser.execute_script('window.prompt = function() {return null}')
# return true for confirm to simulate clicking OK
browser.execute_script('window.confirm = function() {return true}')
# return false for confirm to simulate clicking Cancel
browser.execute_script('window.confirm = function() {return false}')
# don't return anything for leave page popup
browser.execute_script('window.onbeforeunload = null')