如何在Robot框架中关闭浏览器插件警报

时间:2018-05-28 08:10:30

标签: robotframework

在我们的应用程序中,当我在网页之间导航时,系统显示附加Browser Confirmation Alert。我正在使用Robot框架进行自动化。我尝试使用“处理警报”关键字接受或取消警报。但我在报告中观察到“未找到警报”错误。此外,右键单击被禁用以在“警报”窗口中查找Web元素。

*** Settings ***
Library           Selenium2Library
Test Teardown    Close Application

*** Variables ***

*** Test Cases ***
Dismiss Alert
    Open Aplication
    Click WebElement    ${serchXpath}
    Click WebElement    ${navigateXpath}
    Wait Until Element Is Visible    ${Inv_xpath_all_rows}    timeout=60 seconds
    Handle Alert    action=DISMISS    timeout=60 s

失败:警告未在5秒内找到。在行处理警报操作= DISMISS超时= 60秒

我是自动化世界的新手,请您帮助我。非常感谢。

1 个答案:

答案 0 :(得分:0)

查看附加弹出窗口的屏幕截图,看起来您正在处理“外部协议请求”框。您无法使用selenium webdriver API与此框进行交互。相反,您需要使用ChromeOptions或修改Chrome配置文件来处理此问题。这是一个 SO answer ,介绍了如何进行此操作。 要使用Selenium2Library在RobotFramework中处理相同内容,请查看此内容。

${chromeOptions}=    Evaluate    sys.modules['selenium.webdriver'].ChromeOptions()    sys, selenium.webdriver
${exclude}=    Create Dictionary    "fasp"=True
${prefs}=    Create Dictionary    protocol_handler.excluded_schemes=${exclude}
Call Method    ${chromeOptions}    add_experimental_option    prefs    ${prefs}
Create Webdriver    Chrome    chrome_options=${chromeOptions}

来源 https://support.asperasoft.com/hc/en-us/articles/216660968-How-to-unblock-the-launching-of-Connect-3-6-5-in-Chrome

相关问题