我想知道是否可以通过某些参数使用“选择文件”关键字来选择文件夹而不是单个文件?
文件上传输入的HTML类似于我们应用程序中的文件夹上传输入。
文件
<input data-automation-id="upload-multiple-files" id="upload-multiple-files" multiple="multiple" name="uploadFiles" type="file" accept="*" title="Select files to upload">
文件夹
<input data-automation-id="uploadFolder" directory="" id="uploadFolder" multiple="multiple" name="uploadFiles" type="file" webkitdirectory="" accept="*" title="Select folders to upload">
对于文件上传,Choose File xpath=//input[@type="file"]
C:\\Users\\username\\Desktop\\robottestfile.txt
有效。但是对于文件夹上载Choose File xpath=//input[@type="file"] C:\\Users\\username\\Desktop\\
来说不是。
很抱歉,如果有一个简单的解决方案,我还找不到。
尝试了Helios的回答,这使我进入了一个新的地方。
现在我有
Send folder
@{my_file_list}= OperatingSystem.List Files In Directory ${path_to_directory}
FOR ${file} IN @{my_file_list}
\ ${result}= Choose File ${my_locator} ${file}
# Finish this test
# Close Browser
*** Keywords ***
*** Variables ***
${my_locator} xpath=//input[@title="Select files to upload"]
${path_to_directory} C:\\Users\\username\\Desktop\\alfrescotestfolder
但是我得到这个错误:
ValueError:文件'alfresctotestexcel.xlsx'在本地文件系统上不存在。
alfrescotestexcel.xlsx在该目标文件夹中...
答案 0 :(得分:2)
否,Choose File
没有现成的解决方案。您必须先在文件夹中获取文件名,然后再为每个文件名Choose File
。
@{my_file_list}= OperatingSystem.List Files In Directory ${path_to_directory}
: FOR ${file} IN @{my_file_list}
\ ${result}= Choose File ${my_locator} ${path_to_directory}${/}${file}
答案 1 :(得分:0)
cd /path/to/app/folder
phonegap plugin add whatever-plugin-name-is
我在文件选择中添加了完整路径。请尝试这些,这将为您工作。
注意: 如果您具有“浏览文件”或“选择文件”按钮,请使用此行等待关键字成功显示120 2s元素$ {xpath_for_BrowseFiles_button}。