用 Testify 来改善 GO 测试和模拟

csshawn ·
panda8z
爱生活,爱🐷🐷
DummyFunc 这个名字就是多余的函数。 本身不应该有这个函数。这里写了这个函数的原因是,如果 MessageService 还有其他方法,那么 这个smsServiceMock 就要实现所有 MessageService 里的方法。。。是不是很无语。 这就要求你在设计 Interface的时候尽量使用组合思想。为了便捷地做Mock测试,甚至还要在业务代码里做一些调整。
#2
更多评论
对mock实现的测试函数中,为了实现实现 MessageService 接口,创建了DummyFunc函数,但是 MessageService接口并没有DummyFunc函数。 在同一份代码中第44行,在我电脑上运行报错:“Cannot use &#39;smsService&#39; (type *smsServiceMock) as type MessageService” 望解答 <a href="/user/csshawn" title="@csshawn">@csshawn</a>
#1