如何在机器人框架中使用“选择文件”关键字上传文件

问题描述 投票:0回答:2

如何在机械手框架中使用“选择文件”关键字上传文件。出于测试目的,我使用了该URL,即https://imagetopdf.com/及以下是代码。

URL易于访问-如果有任何尝试可以提供解决方案,请感谢。

*** Variables ***
${UploadFiletest}           xpath=//div[@id="pick-files"]
${AddFile}          C:\download.jpg 

*** Test Cases ***
Test for Upload
Open the Browser and Login to eCare WebPage    ${BROWSER}    ${URL_test}
Upload file

*** Keywords ***
Upload file
Wait Until Page Contains Element ${UploadFiletest} 60s
click element ${UploadFiletest}
Choose File UploadFiletest AddFile
robotframework jfilechooser
2个回答
0
投票

您不必单击控件就可以上传文件-selenium(因此,是Robot Framework的SeleniumLibrary)通过将文件路径设置为html中的input元素的值来做到这一点。因此,当您单击它时,将打开OS文件选择对话框-但Selenium无法对其进行控制。

[另一件事-我不知道这是您正在使用的实际源,但是Choose File调用发生了错误-您没有将变量传递给它,而是字符串。应该是这样的:

Choose File    ${UploadFiletest}    ${AddFile} 

0
投票

实际上,对于Choose file关键字,我们不需要像手动进行操作一样单击按钮并选择文件。关键字在内部搜索您所在位置的文件,并将其输入到网页上的定位器中,我们需要选择属性输入且类型为“ file”的定位器,如我在picture中提到的。

*** Variables ***
${UploadFiletest}           css=[type='file']
${AddFile}          D:/download.jpg

*** Test Cases ***
Test for Upload
    Open Browser      https://imagetopdf.com/    Chrome
    Upload file

*** Keywords ***
Upload file
    Wait Until Page Contains Element   ${UploadFiletest}   60s
    Scroll Element Into View     ${UploadFiletest}
    Choose File     ${UploadFiletest}     ${AddFile}
© www.soinside.com 2019 - 2024. All rights reserved.