首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将rails控制器测试替换为集成测试应该始终坚持到db?

将rails控制器测试替换为集成测试应该始终坚持到db?
EN

Stack Overflow用户
提问于 2017-12-27 14:55:46
回答 1查看 202关注 0票数 1

我正在寻找与测试流程相关的Rails集成测试,并且对于用集成测试替换控制器测试(在rails 5中不推荐)的行业标准有一些疑问。

通常我们有小型控制器,在这里我们获得参数,调用正确的协作者并准备响应,通过直接在控制器对象上模拟协作者来测试它是很容易的。

我担心将每个控制器测试迁移到持久化db的集成测试的开销。这个案子的标准是什么?

当只测试一个路由/操作而不是一个完整的流程时,标准是什么?

我们怎样才能取代这个?:

@controller.stubs(:authenticate).returns(true)

EN

回答 1

Stack Overflow用户

发布于 2017-12-27 15:40:42

集成测试的目的是模仿真实用户。它们是用来测试整个应用程序的。

对于这意味着什么,意见各不相同。对我来说,这意味着你应该完全避免固执/嘲弄。没有一件东西被短截或嘲弄,所有的东西都被完整地执行了。这意味着我编写的每个集成测试都要经过输入用户名和密码的实际身份验证过程。有些步骤是多余的,是的。

集成测试比单元/控制器测试更慢。删除身份验证步骤可能不会为您节省足够的时间来改变长期运行(不需要双关语)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47994240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档