Robotframework 如何使用Robot框架捕获警报框
我试图捕获警报屏幕截图,但屏幕中没有显示警报框 例如:Robotframework 如何使用Robot框架捕获警报框,robotframework,alert,Robotframework,Alert,我试图捕获警报屏幕截图,但屏幕中没有显示警报框 例如: AlertTest Open Browser http://www.seleniummaster.com/robotframeworktest/alerttest.html ff Sleep 5s Click Button name=alert_button sleep 10s capture page screenshot Alert Should Be Pre
AlertTest
Open Browser http://www.seleniummaster.com/robotframeworktest/alerttest.html ff
Sleep 5s
Click Button name=alert_button
sleep 10s
capture page screenshot
Alert Should Be Present This is an alert box
Close Browser
如果有人有经验,请帮助我。据我所知,无法使用SeleniumLibrary捕获警报,因为警报不在页面的一部分 我们使用内置的屏幕截图库和KW来解决这个问题
您可以尝试考虑是否满足您的要求。
< P>您所看到的行为是由于action=LEAVE
,您可以在不修改行为的情况下进行检查。显示其他选项
*** Settings ***
Library SeleniumLibrary
*** Test Cases ***
AlertTest
Open Browser http://www.seleniummaster.com/robotframeworktest/alerttest.html chrome
Sleep 2s
Click Button name=alert_button
Alert Should Be Present action=LEAVE text=This is an alert box
Handle Alert action=ACCEPT
Close Browser
虽然这将解决您的问题:我看不出问题的警报部分,但您将遇到下一个问题。使用SeleniumLibrary拍摄屏幕截图将不起作用,因为现在存在警报。如前所述,这可以通过关键字处理
请仔细阅读本节,因为此库依赖于特定于操作系统的Python模块。我认为问题在于屏幕截图中没有捕捉到警报框,但警报框的断言关键字中没有捕捉到警报框。这个答案与OP的预期不符。@A.Kootstra我认为这不是因为它速度太快,而是因为警报在这不是页面的一部分,因此它使我无法捕获警报框。当遵循提供的代码示例时,这是您将遇到的第一个问题。正如在添加的部分中强调的那样,这将导致第二个问题。@A.Kootstra感谢您的帮助,现在我使用ScreenCapLibrary并编辑一些关于screen name的python代码,以便与SelenuimLibrary的关键字“Capture Page Screenshot”一起工作。但是它有一个小问题,因为测试库用于在机器上截图。@SawitreeCha在我看来,这与这个问题中的问题不同。出于这个原因,我建议创建一个新问题,并提供一个完整的代码示例。