我正在尝试使用robotframework对网络的上传文件按钮进行测试,但我无法找到方法。
具体来说,我使用这个网站作为例子:
http://www.zamzar.com/
这是上传按钮的属性:
<input id="inputFile" class="bodyBig" type="file" name="file_1" size="12"
style="position: absolute; display: block; opacity: 0; z-index: 0;">
正如我在文档中看到的那样,我正在使用Choose File但是我被卡在Windows弹出窗口中,它会打开,但文件未被选中:
我的测试用例看起来像这样:
*** Settings ***
Suite Setup Test Setup Open Browser
Suite Teardown Test Teardown Close Browser
Resource SeleniumKeywords.tsv
*** Test Cases ***
Select file typing path
File Should Exist C:${/}Users${/}MADI${/}Desktop${/}image.bmp
Wait Until Page Contains Element id=inputFile
Choose File id=inputFile C:${/}Users${/}MADI${/}Desktop${/}image.bmp
Select From List toExtensionSel jpg
Input Text toEmail diego.mg.umh@gmail.com
Click Button uploadButton
Sleep 10
文件存在并且位于正确的位置,您知道我需要更改什么才能上传文件吗?
提前感谢您,最好的问候.-
答案 0 :(得分:2)
要上传文件,您无需担心Windows弹出窗口。只有在手动上传文件时才会显示Windows弹出窗口。
因此,当您通过自动化代码模拟相同时,请使用以下代码格式
choose file ${xpath} ${absolute_file_path}
其中,选择文件是您从selenium2libary导入的关键字,$ {xpath}是您的情况下上传文件元素的xpath
xpath=//input[@id='inputFile']
$ {absolute_file_path}是文件路径,其中包含您要上传文件的文件名。
${absolute_file_path} C:\Users\MADI\Desktop\image.bmp
如果您使用单独的资源文件来定义代码中使用的变量。
答案 1 :(得分:1)
当您点击“选择文件”按钮时,会显示一个我们可以自动执行的窗口。所以我们有几种方法可以解决这个问题。
如果有任何问题,请告诉我。