【问题标题】:Robot Framework File Upload getting element not reachable error机器人框架文件上传获取元素不可访问错误
【发布时间】:2019-03-10 23:27:59
【问题描述】:

我知道这个问题之前已经回答过了。但我找不到任何答案如何获取弹出窗口的定位器。 将文件从本地系统上传到 GUI 时仍然出现错误。

  1. 在我的 GUI 中,我通过提供 xpath 来单击上传箭头按钮
  2. 现在文件上传窗口弹出,我需要在我的桌面或任何本地路径的输入字段中提供文件名。 - *****我不确定如何为输入提供定位器*****
  3. 我用的是选择文件名:文件名:C:/Users/xxxx/Desktop/Generic_1902_User_Input_Spreadsheetenter image description here.xlsx

我得到元素无法通过键盘错误访问。 有人可以上传这个视频吗 - 查看机器人框架文件上传的视频教程。 (Robot Framework File Upload)

即使我尝试过使用 AutoIT。我可以创建一个 au3 文件以及一个 exe 文件。但是我无法调用。使用 Python 脚本在我的机器人框架中使用这个 au3/exe 文件。

有人可以指导一下吗?

【问题讨论】:

    标签: robotframework


    【解决方案1】:

    不要单击打开文件选择器窗口的按钮,而是通过检查页面找到<input> 元素,并直接将其定位器与Choose File 关键字一起使用。

    例如在 Stack Overflow 上,如果您想编辑问题并上传图片,则应使用 <input type="text" class="s-input" id="image-upload-url-input-55038357"> 元素。在您的待测页面上搜索类似元素。

    <div class="grid--cell grid fl-grow1 ai-baseline sm:fd-column sm:ai-stretch d-none js-url-input-container">
      <label class="s-label mr8 sm:mr0 sm:mb4" for="image-upload-url-input-55038357">Paste image or link:</label>
      <div class="fl1 ps-relative">
        <input type="text" class="s-input" id="image-upload-url-input-55038357">
      </div>
      <button class="s-btn sm:as-start js-cancel-url">Cancel</button>
    </div>
    

    为了给你一个示例代码,下面的 sn-p 将作为一个 quest 用户导航到这个问题,并将上传一个 Capture.PNG(不保存)。注意前一个输入元素的定位器//*[contains(@id, 'image-upload-file-input')]

    *** Settings ***
    Library           SeleniumLibrary
    
    *** Variables ***
    ${EDIT QUESTION ELEMENT}    improve this question
    ${UPLOAD IMAGE BUTTON}    //*[contains(@id, 'wmd-image-button')]
    
    *** Test Cases ***
    File Upload Test
        Open Browser    https://stackoverflow.com/questions/55038357/robot-framework-file-upload-getting-element-not-reachable-error    Chrome
        Maximize Browser Window
        Click Link       ${EDIT QUESTION ELEMENT}
        Click Element    ${UPLOAD IMAGE BUTTON}
        Choose File     //*[contains(@id, 'image-upload-file-input')]    D:\\Capture.PNG
        Click Button    Add picture 
    

    【讨论】:

    • 谢谢本斯,这对我有用。我删除了单击打开文件选择器窗口的按钮的步骤。而我直接使用了Choose File xpath=.//div/input C:\\Users\\xxx.xlsx。这工作得很好。非常感谢您帮助我。
    • @Sanghamitra Guru 很高兴听到,在这种情况下,您可以使用勾选标记将答案标记为已接受。
    猜你喜欢
    • 2020-12-08
    • 2013-02-13
    • 2017-09-16
    • 2017-09-26
    • 2016-10-24
    • 1970-01-01
    • 2015-11-11
    • 1970-01-01
    • 2016-05-28
    相关资源
    最近更新 更多