简体   繁体   English

模拟最终创建的新实例?

[英]Mock final new instance created?

How to mock private final MockClass mockClass = new MockClass(); 如何模拟private final MockClass mockClass = new MockClass();

 public class SimpleClass {
     private final MockClass mockClass = new MockClass();
 }

Use dependency injection; 使用依赖注入; then you can have whatever you want in the field: 那么您可以在该字段中拥有所需的任何东西:

class SimpleClass {
  private final MockClass mockClass;

  SimpleClass(MockClass mockClass) {
    this.mockClass = mockClass;
  }
}

See Misko Hevery's guide to writing testable code : your code is an example of the warning sign "new keyword in a constructor or at field declaration". 请参阅Misko Hevery编写可测试代码的指南 :您的代码是警告标志“构造函数或字段声明中的new关键字”的示例。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM