|
|
1
2
您可以尝试调整代码以遵循 (Abstract) Factory Design 模式,在创建模拟对象的单元测试环境中可以使用不同的工厂。 |
|
|
2
4
初学者的答案是:
|
|
|
3
0
一种方法是不要像那样硬连接你的类。 使用您的示例: MyDataClass将是纯虚拟类。这将至少有2个实现,“真实”实现和模拟实现。 您的测试代码可以通过有两个构造函数来注入模拟实例,一个使用“MyDataClass”,另一个不使用。有关示例,请参见下面的代码。
现在,您可以向所需的MyWorkerClass提供MyDataClass的任何实现。如果您不提供实现,那么您的代码将返回到“真正的”实现上。 另一种技术是使用工厂模式来实例化对象。您的测试代码可以在工厂上设置一些标志,用于创建MyDataClass的实例,并让它生成一个模拟对象而不是真正的对象。我更喜欢第一种技术,因为它比我更容易使用(另外,我不必为我想测试的所有内容维护工厂类) |
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |