我正在建立一个网页的测试脚本,该网页将数据发布到某个应用程序并显示结果。问题是脚本不会从javascript模式弹出窗口加载数据。我想在此声明它不是一个警告,它是一个简单的javascript弹出窗口。
弹出窗口中有一个链接 谷歌 该脚本单击一个链接,然后弹出窗口,但无法从弹出窗口中读取该链接。通过大量测试,我得出的结论是,在弹出窗口出现之前,脚本会在页面中运行。这是它不读取弹出链接的原因。正在使用关注代码来读取弹出窗口。
@driver.find_element(:css, "a.popup-link").attribute("href")
我也尝试过隐式和显式等待,但问题仍然存在。我已使用
将隐式等待设置为30秒 @driver.manage.timeouts.implicit_wait = 30
明确的等待
wait = Selenium::WebDriver::Wait.new(:timeout => 10) # seconds
wait.until { driver.find_element(:css => "a.popup-link") }
element = @driver.find_element(:css, "a.popup-link")
我该怎么办才能正确阅读弹出链接?有什么建议吗?