【问题标题】:upload a file in headless mode for robot framework以无头模式为机器人框架上传文件
【发布时间】:2021-07-03 03:25:21
【问题描述】:

我正在机器人框架中编写一个自动化测试,我需要帮助来使用机器人框架库或 python、javascript 或 ajax 中的一些代码以无头模式为以下 HTML 代码上传文件。

<div class="mx-name-fileManager1 mx-fileinput mx-filemanager form-group no-columns" style="width: 95%; padding-left: 40px;">
    <label class="control-label" for="110.ServiceAsset.UploadDocument_SparePart.fileManager1.11_bch_133" id="110.ServiceAsset.UploadDocument_SparePart.fileManager1.11_bch_133-label">Upload Document
    </label>
    <div class="mx-compound-control" data-focusindex="0">
        <form class="sr-only" enctype="multipart/form-data" method="POST">
            <input type="file" tabindex="-1" accept=".pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.odt">
        </form>
        <input type="text" class="form-control" readonly="" aria-labelledby="110.ServiceAsset.UploadDocument_SparePart.fileManager1.11_bch_133-label" value="...">
        <button type="button" class="btn mx-button mx-fileinput-upload-button" id="110.ServiceAsset.UploadDocument_SparePart.fileManager1.11_bch_133-upload" aria-labelledby="110.ServiceAsset.UploadDocument_SparePart.fileManager1.11_bch_133-label 110.ServiceAsset.UploadDocument_SparePart.fileManager1.11_bch_133-upload">Browse...
        </button>
    </div>
</div>

【问题讨论】:

    标签: javascript html ajax file-upload robotframework


    【解决方案1】:

    您必须使用Robot Framework Selenium library,打开浏览器并导航到您需要上传的页面。然后你可以用这个代码sn-p上传

    Choose File    xpath://input[@type="file"]    ${CURDIR}/somefile.doc
    

    【讨论】:

    • 谢谢。我之前使用的是表单标签之外的输入标签,而不是内部标签。所以我认为“选择文件”关键字在这里不起作用。再次感谢
    • @T-2021 要识别文件上传输入标签,您应该检查类型属性。输入标签的内部有type=file,外部的类型为文本
    猜你喜欢
    • 2013-02-13
    • 2017-09-16
    • 2020-08-30
    • 1970-01-01
    • 2019-01-30
    • 2017-09-10
    • 1970-01-01
    • 2016-05-19
    • 2018-03-13
    相关资源
    最近更新 更多