我正在寻找以“最小的方式”以安全的方式加倍昂贵的物品。
我知道嘲笑,存根并使用它们,但问题是简单的双打不防水。如果真实对象的api发生变化,则测试通过,但真正的实现失败。
我找到了rspec的instance_double-feature。我用Minitest创建我的测试。你能为我指出正确的方向吗? THX
答案 0 :(得分:0)
Minitest旨在有意识地实现模拟和存根的非常基本的实现。以下链接可能很有趣:https://martinfowler.com/articles/mocksArentStubs.html。
所以结论是,在Minitest上没有与rspec的instance_double真正对应的东西。
与此同时,我是经典测试的粉丝。这意味着:尽量避免模拟。但有些情况下,嘲笑是不可避免的。如果是这种情况,我会建议最小的整合respec-mocks:https://relishapp.com/rspec/rspec-mocks/docs/outside-rspec/integrate-with-minitest