【问题标题】:Rails testing without specifying exact wording没有指定确切措辞的 Rails 测试
【发布时间】:2012-01-18 02:29:28
【问题描述】:

我对测试的概念不熟悉,但有一件事让我很反感。目前我正在使用 rspec 和 capybara 进行请求测试。当我想指定用户操作时,例如按下按钮或填写表单字段,我必须为该字段提供准确的措辞。

例如,当我有一个Reset 按钮并在我的测试中写入click_button 'reset' 时,它失败了。同样,我有一个 password_confirmation 属性字段。但是,我不能说要填写 password_confirmation 字段,因为它的 id 和 name 已扩展(分别为 user_password_confirmationuser[password_confirmation])。最简单的解决方法是使用标签并写入fill_in 'confirm password'

现在,很明显,当我想改写标签甚至更改字母大小写时,这些测试将失败。是否有任何选项可以进行措辞不那么严格的测试?

【问题讨论】:

    标签: ruby-on-rails testing rspec capybara


    【解决方案1】:

    是的,您需要使用I18n(即使您的应用程序只有一种语言)。然后,无论将什么语言环境设置为默认值或将来如何更改该值,您都将获得“标签不可知”测试。

    您只需传递一个密钥并获得实际标签。

    【讨论】:

      猜你喜欢
      • 2019-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多