我尝试使用Capybara脚本上传文件。我从以下链接获得了一些帮助,并且我尝试使用以下链接中指定的autoIT
选项:
Testing HTML5 File Upload with Capybara/Selenium Webdriver - Ruby
在上面的页面中,我对以下两行有疑问:
find_field(<<upload_file_id>>).click
system("<<full_path>>\\file_upload.exe \"#{<<file_path>>}\" \"File Upload\"")
感谢脚本,我创建了一个带有给定代码的.exe并给出了上面的两行来上传文件,但它给出了语法错误。
什么是&#34;文件上传&#34;在上面的语法?这是我要上传的文件的名称吗?我尝试了很多方法(前进/后退斜杠),但它返回Syntax error (syntax error, unexpected keyword_end, expecting ')' (SyntaxError))
。这是我的语法。请建议并让我知道我错过了什么。赞赏这方面的建议。语法中具有特定文件名的任何示例都会有所帮助。
system("C:/Cucumber/cucumberdemo/features/file_upload.exe/"#
{C:/Cucumber/cucumberdemo/Capybara.PNG}\"\File Upload\"")
system("C:\Cucumber\cucumberdemo\features\file_upload.exe\"#
{C:\Cucumber\cucumberdemo}\"\"Capybara.PNG\"")
system("C:/Cucumber/cucumberdemo/features//file_upload.exe/"#
{C:/Cucumber/cucumberdemo}/"/"Capybara.PNG/"")
system("C:/Cucumber/cucumberdemo/features/file_upload.exe/"#
{C:/Cucumber/cucumberdemo/Capybara.PNG}/"")
此外,System
命令是否也会点击&#34;打开&#34;对话框中的按钮或我是否需要为此编写单独的脚本?
答案 0 :(得分:0)
为什么不直接使用Capybara的 attach_file 方法?
答案 1 :(得分:0)
试试这个
system(&#34; C:/Cucumber/cucumberdemo/features/file_upload.exe /"#
{&#34; C:/Cucumber/cucumberdemo/Capybara.png"} \&#34; \文件上传\&#34;&#34;)
文件路径也应放在你忘记的双引号