Ruby - SeleniumGrid - 如何在selenium网格中处理Windows弹出窗口(File-> browse)

时间:2016-11-28 19:00:53

标签: ruby selenium rubygems cucumber-jvm rautomation

Meta -

OS: Windows 7
Selenium Version: 2.52.0, IDE, etc
Selenium Grid Extras 3.0.1
Browser: Chrome
Browser Version: 54.0.2840.99 (64-bit)

预期行为 -

点击"浏览文件"并打开窗口弹出窗口以浏览文件并提交应该在Selenium& Selenium Grid

HTML代码

<div layout="row" layout-align="center center" class="layout-align-center-center layout-row"><input type="file" accept="text/csv,application/vnd.ms-excel,application/vnd.oasis.opendocument.spreadsheet,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" id="navigate-to-browse-file" class="input-box full-width ng-pristine ng-untouched ng-valid ng-empty" ngf-select="" ng-model="vm.uploadFiles" ngf-multiple="false" aria-invalid="false"><label class="md-primary md-raised md-button md-ink-ripple" md-ink-ripple="" for="navigate-to-browse-file"><span>Browse File</span><div class="md-ripple-container"></div></label></div>

Ruby Capybara RAutomation Code

然后点击标签&#34; span&#34;用文本&#34;浏览文件&#34; - 单击浏览按钮

窗口弹出窗口中选择文件的代码

file=$uploadfile_path
file = Dir::pwd + "#{file}"
file=file.gsub! "/", "\\"
window_handle = RAutomation::Window.new(:title => /#{window}/i)
window_handle.text_field(:class => field_input, :index => 0).set file

实际行为 -

以上代码适用于Selenium,不适用于SeleniumGrid

错误消息

Unable to find file field "navigate-to-browse-file" (Capybara::ElementNotFound)

重现的步骤 -

点击任何应用程序中的浏览文件功能(无法提供指向我们应用程序的链接)ex:https://uploadfiles.io/ 在Windows弹出窗口中输入文件路径 浏览文件 窗口弹出

enter image description here

enter image description here

0 个答案:

没有答案