gpt4 book ai didi

ruby-on-rails - 如果 form_tags 正确,是否可以测试 View 页面?

转载 作者:行者123 更新时间:2023-11-28 21:34:40 24 4
gpt4 key购买 nike

使用 rspec 或类似工具,是否可以测试模板逻辑是否正确的 View 页面?

例如假设我的模型发生了变化,我的表单标签助手引用了一个不再存在或已重命名的模型属性。

我可以测试渲染模板以查看它是否损坏吗?

最佳答案

当您浏览 RSpec 文档时,您会注意到它非常坚持模型、 View 和 Controller 测试保持独立,并且不同层的测试之间的交互最少(反而严重依赖模拟)。所有层组合在一起的方式更多地属于集成测试领域。如果您设置了一套像样的集成测试,您将不可避免地注意到您破坏了对另一层有影响的东西,就像您描述的示例中那样。

您可以使用 RSpec 进行此类集成测试(查看 RSpec 文档中的集成模式),但它相当乏味且丑陋:

response.should have_tag("input[name=?]", "foo")

集成模式将调用您的 Controller 并呈现相关的 View ,此时如果 View 拒绝呈现将变得很明显,因为它调用了一个不存在的模型方法(在这种情况下,您甚至都不会关心在你看来测试)。

或者你可以走 cucumber /牛排/等路线(从长远来看,这可能是一个更好的主意)。

关于ruby-on-rails - 如果 form_tags 正确,是否可以测试 View 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4111491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com