Используя Capybara, мне нужно утверждать, что элемент формы отсутствует, например: "Тогда я не должен видеть текстовое поле" Username ". Поскольку find выдает исключение, если элемент не найден, это лучшее, что я придумал. Есть ли лучший способ?
Then /^I should not see the "([^\"]+)" ([^\s]+) field$/ do |name, type|
begin
# Capybara throws an exception if the element is not found
find(:xpath, "//input[@type='#{type}' and @name='#{name}']")
# We get here if we find it, so we want this step to fail
false
rescue Capybara::ElementNotFound
# Return true if there was an element not found exception
true
end
end
Я новичок в Capybara, поэтому мне может не хватать чего-то очевидного.