首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为测试设计或停止为测试设计

为测试设计或停止为测试设计
EN

Stack Overflow用户
提问于 2008-10-09 09:18:14
回答 2查看 178关注 0票数 2

所以哪一个更好。我们是否开始让测试来设计我们的代码。我们开始引入依赖的构造函数注入仅仅是为了使代码可测试吗?或者我们使用"override“受保护的方法&测试类的子类。

EN

回答 2

Stack Overflow用户

发布于 2008-10-09 09:25:25

我通常认为可测试的代码是好的代码。对于可测试的代码,您需要更好的解耦,以便可以使用测试工具隔离测试每个组件。但是,实现中不应该只有单元测试使用的代码。

此外,请记住,您需要测试的是对象的公共API,而不是它的受保护/私有方法。在私有/受保护的方法中查找bug应该是日志记录/调试器的作用。毕竟,这些方法中的bug也会传播到公共方法。因此,只要公共方法完成测试,受保护的方法也会被覆盖。

如果您使用的是java,并且有在同一个包中实现公共接口的包范围的类,我会将单元测试放在同一个包中的一个单独的文件夹中,以测试这些类。您还可以将单元测试放在与被测试类相同的包中,以测试受保护的方法。

票数 3
EN

Stack Overflow用户

发布于 2008-10-09 13:09:23

我基本上同意Staale的观点,设计良好的代码应该是可测试的。

我不使用构造函数注入或派生类来进行测试。我相信使用“服务定位器”是做依赖注入的正确方式。

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

https://stackoverflow.com/questions/186501

复制
相关文章

相似问题

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