0

使用 Devise 和 Cucumber,对于用户尝试在没有密码的情况下注册的情况,我有以下代码:

Then /^I should see a missing password message$/ do
  page.should have_content "Password can't be blank"
end

在表单顶部显示错误时这很好,但我现在已切换到内联消息,这意味着属性名称不再在其关联的错误消息中引用,因此我需要将我的代码更改为:

Then /^I should see a missing password message$/ do
  page.should have_content "can't be blank"
end

现在我的功能通过了,但我对这个解决方案并不是 100% 满意。如果我还可以测试此消息是否附加到空的密码字段,而不仅仅是位于页面上的某个位置,我会感觉更好。我想知道是否有办法说这样的话:

Then /^I should see a missing password message$/ do
  password_field.should have_content "can't be blank"
end

我对黄瓜很陌生。

4

1 回答 1

1

查看 capybara 文档中的查找和范围界定:https ://github.com/jnicklas/capybara/#finding

find('#password').should have_content("can't be blank")
于 2012-08-09T08:37:06.460 回答