机器人框架文件上传

时间:2013-02-27 13:20:41

标签: file-upload robotframework

我必须编写一个必须上传文件的测试。 这可能使用Robot Framework吗?

由于

6 个答案:

答案 0 :(得分:2)

SeleniumLibrary

中有选择文件关键字

答案 1 :(得分:0)

选择文件关键字可以在文件上载文本字段中键入文件路径中的名称。但是,关键字无法进行交互,无法在单击文件的窗口中选择文件,然后单击“打开”按钮。 要在“打开文件”窗口中单击文件并单击“打开”按钮,可以使用Robot Framework AutoItLibrary关键字。 Check out the video tutorial for Robot Framework File Upload

答案 2 :(得分:0)

ChooseFile会将文件路径粘贴到给定的定位器中。这就像输入文本一样。 您可以将AutoIT用于此记录自动脚本并将其转换为au3文件并运行如下 运行并返回RC auitscriptforfileupload.au3

答案 3 :(得分:0)

这个以及涉及在DOM之外点击的其他问题可以通过几种方式解决。选择文件可能会被使用,但我从来没有尝试过,我已经看到了其他一些技巧来做同样的事情。

第一个是使用AutoIT在DOM外部点击,就像用户进行手动测试一样。我自己从未使用它,但我已经看到它在Robot Framework中用于最小化窗口,打开MS Paint并画一条线,所以我很确定它也可以用于此。< / p>

第二种方法是创建一个Robot Framework关键字,以便通过DOM外部的剪切图像进行单击。这就是我一直用它来点击我用Robot Framework无法正常访问的按钮。使用“剪切工具”可以剪切要在中心位置单击的位置的图片。它有点挑剔,但易于使用,所以我喜欢它。这是Python 2.7.13的代码。

def click_by_image(self, image_name):
    if self.selenium_lib is None:
        self.selenium_lib = BuiltIn().get_library_instance('ExtendedSelenium2Library')
    pag.click(pag.locateCenterOnScreen(str(image_name)))

假设您熟悉创建新的Robot Framework关键字(有关详细信息,请参阅其他问题/答案,这超出了本问题的范围),实现这一点应该非常简单。

编辑:我最近切换到选择文件,因为可以假设Windows(或您正在运行的操作系统)GUI正在运行,并且可以手动执行Robot Framework自动化的操作。它有时也会更快点击,更可靠,并且可以在你关注另一个窗口的同时在后台运行。

答案 4 :(得分:0)

选择文件将效果最佳

例如:从执行目录导入文件以获取有关文件路径检查操作系统库的更多详细信息

Click Element    ${IMPORT}
Choose File      ${LOCATE_FILE}    ${CURDIR}${/}filename.txt
Click Element    ${VALIDATE_IMPORT}

答案 5 :(得分:0)

我用了很多次 我只是在Robot Framework中编写了一个函数,该函数需要2个参数 1个文件名 2浏览位置

File Upload for Creative
[Arguments]         ${file}=
...                 ${browsrLocator}=
${NORMAL_PATH_UPLOAD_FILE_NAME}      Normalize Path       ${DataFiles}/${file}
Choose File         ${browsrLocator}        ${NORMAL_PATH_UPLOAD_FILE_NAME}
Sleep   3s

就这样..