Rails集成测试以选择是否存在正确的按钮文本

时间:2015-12-15 03:40:33

标签: ruby-on-rails tdd actiondispatch

我正在浏览Hartl Rails Tutorial并完成了9.60,9.61,9.62中的练习,这些练习要求使用新的部分重构新的和编辑表单代码。表单现在使用'提供'提供按钮文本,如下所示:

<% provide(:button_text, 'Create my account') %>

在&#39; yield&#39;页面上呈现的内容如:

<%= f.submit yield(:button_text), class: "btn btn-primary" %>

虽然不是练习的一部分,但我并不是要编写一个集成测试来测试每个页面按钮上的正确文本。例如,此代码将测试注册表单页面:

test "signup page" do
  get signup_path
  assert_select "title", full_title("Sign up")
  assert_select "input[type=submit]", value: "Create my account"
end

但是,我无法确定选择按钮的正确代码并为按钮文本指定正确的值。我让按钮文本不正确以试图让测试失败,但是没有找到成功失败的正确测试语法; - )

ActionDispatch的

Documentation没有一个对此测试用例有帮助的具体示例。

1 个答案:

答案 0 :(得分:1)

好的找到了我自己的答案。正确选择按钮并验证文本:

=OFFSET(B$1,INT(ROW()/2),)  

我学到的是1.元素的属性应该用方括号括起来。 2.使用&#39;属性=?&#39;将该属性值与您要测试的值相匹配:在这种情况下&#34;创建我的帐户&#34;