【问题标题】:How do I click a link inside the frame using robot framework selenium2Library?如何使用机器人框架 selenium2Library 单击框架内的链接?
【发布时间】:2020-02-07 04:58:07
【问题描述】:

以下是我的代码,我可以登录页面,但登录后我无法退出。

最大化浏览器窗口

Input Text    //*[@id="userid"]    some_user_name
Input Password    //*[@id="password"]    some_password 
Click Button    //*[@id="btnSubmit"]
sleep    10s
Select Frame    //*[@id="topFrame"]
Page Should Contain    Log out
Click Element    //*[contains(text(),'Log out')]

日志:

开始测试:WebScraping.NAS web.Welcome 20191009 15:29:40.801:信息:打开浏览器“chrome”到基本 url“一些 url”。 20191009 15:29:45.557:信息:在文本字段 '//*[@id="userid"]' 中键入文本 '******'。 20191009 15:29:45.658:信息:在文本字段'//* [@id =“密码”]'中输入密码。 20191009 15:29:45.739:信息:单击按钮'//* [@id =“btnSubmit”]'。 20191009 15:29:55.823:信息:睡了 10 秒 20191009 15:29:55.881:信息:当前页面包含文本“注销”。 20191009 15:29:55.881:信息:单击元素'//* [包含(文本(),'注销')]'。 20191009 15:29:56.310 : FAIL : 未找到带有定位器'//* [包含(文本(),'注销')]'的元素。 结束测试:WebScraping.NAS web.Welcome

【问题讨论】:

    标签: python-3.x robotframework selenium2library


    【解决方案1】:

    我认为问题出在以下行:

    Select Frame    //*[@id="topFrame"]
    

    frame标签不包含id属性,而是使用name属性来识别。 (HTML Tag Documentation)

    使用@name 代替@id,如下行所示

    Select Frame    //*[@name="topFrame"]
    

    我希望这能解决你的问题。

    【讨论】:

      猜你喜欢
      • 2017-11-12
      • 2016-04-28
      • 2015-09-28
      • 2012-03-26
      • 2021-06-10
      • 2018-02-10
      • 2015-12-24
      • 2016-08-17
      • 2021-01-17
      相关资源
      最近更新 更多