我将 capybara 与 capybara-webkit 和 Semantic-ui 一起使用,但是接下来这些下拉列表无法开箱即用,因为隐藏了<select>
元素:
# feature_spec.rb
select 'option1', from: 'Options'
$ rspec feature_spec.rb
Capybara::ElementNotFound:
Unable to find select box "Options"
你有解决方案吗?
答案 0 :(得分:4)
我已经创建了这个帮手:
# for Semantic-ui dropdown
def select_from_dropdown(item_text, options)
# find dropdown selector
dropdown = find_field(options[:from], visible: false).first(:xpath,".//..")
# click on dropdown
dropdown.click
# click on menu item
dropdown.find(".menu .item", :text => item_text).click
end
# in spec
select_from_dropdown 'option1', from: 'Options'
我希望它有所帮助: - )
答案 1 :(得分:0)
你也可以这样做:
execute_script('$("#Options").dropdown("set selected", "option1");')
execute_script允许您在测试中运行脚本。它使用semantic-ui方法从下拉列表中选择所需的选项。
答案 2 :(得分:0)
经过两天的搜索和阅读,这篇文章是其中几篇有用的文章之一。希望这可以帮助其他人!
我创建了一些类似的方法,请改名。我更改了它。
TRIM(LEADING '0' FROM colname)
我还引用了this。 还要尝试等待,睡觉和看得见:false