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

时间:2019-11-21 02:21:11

标签: robotframework jfilechooser

如何在机械手框架中使用“选择文件”关键字上传文件。 出于测试目的,我使用了该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

4 个答案:

答案 0 :(得分:0)

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

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

Choose File    ${UploadFiletest}    ${AddFile} 

答案 1 :(得分:0)

实际上,对于Choose file关键字,我们不需要像手动一样单击按钮并选择文件。关键字在内部搜索您指定位置的文件,并将其输入到网页上的定位器,此外,我们需要选择具有属性输入且类型为=“ file”的定位器,正如我在{{3}中提到的那样}。指定文件路径时,我们需要在picture中提到的Robot Framework中使用正斜杠/

*** Variables ***
${UploadFiletest}           css=[type='file']
${AddFile}          C:/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}

答案 2 :(得分:0)

与其他库一起检查:

Library           pyautogui
Library           ImageHorizonLibrary

代码示例:

Scroll Element Into View    xpath=//div[1]/div[5]/a/span
Wait Until Element is visible   xpath=//div[1]/div[5]/a/span
Set Focus To Element    xpath=//div[1]/div[5]/a/span
Click Element   xpath=//div[1]/div[5]/a/span
Sleep   5s
pyautogui.Typewrite file_name.jpg
pyautogui.Key Down  'enter'
ImageHorizonLibrary.Press Combination   Key.enter
Sleep   15s

为此,我必须将文件“ file_name.jpg”保留在默认浏览文件夹中。通过示例代码运行确定了默认文件夹。

更多详细信息-"Choose File" in "seleniumlibrary" in robotframework

答案 3 :(得分:0)

请看您的测试示例,在此URL https://imagetopdf.com中,上传分为两个阶段:首先通过加载栏加载,然后展开。 选择“硒文件”仅以简单的方式(单击按钮)上载文件。 为此,它将AutoItLibrary库与Send命令一起使用。

相关问题