gpt4 book ai didi

unit-testing - 为测试而设计或停止为测试而设计

转载 作者:行者123 更新时间:2023-11-28 20:07:17 25 4
gpt4 key购买 nike

所以哪个更好。我们是否开始让测试设计我们的代码。我们是否开始为依赖项引入构造函数注入(inject)只是为了使代码可测试?或者我们是否使用“覆盖” protected 方法并将被测类子类化。

最佳答案

我通常认为可测试的代码是好的代码。为了使代码可测试,您需要更好的解耦,以便可以使用测试工具单独测试每个组件。但是,在实现中不应有仅供单元测试使用的代码。

此外,请记住,您需要测试的是对象的公共(public) API,而不是 protected /私有(private)方法。查找私有(private)/ protected 方法中的错误应该是日志记录/调试器的用途。毕竟,其中的错误也会传播到公共(public)方法。所以只要公共(public)方法完成测试, protected 方法也会被覆盖。

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

关于unit-testing - 为测试而设计或停止为测试而设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/186501/

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