问题描述
有一个Data
类,其中有2个Map<String,String>
成员:
class Data {
private Map<String,String> first;
private Map<String,String> second;
Data(Map<String,String> first,Map<String,String> second) {
this.first = first;
this.second = second;
}
}
在单元测试中,我打算使用 JMockit 在Data
上进行测试:
public class DataTest {
@Tested
priavate Data data;
@Injectable
private Map<String,String> first;
@Injectable
private Map<String,String> second;
}
不幸的是,运行测试时会有no constructor in tested class...
我试图从构造函数中删除一个参数,然后注入将起作用。但是,如果两个参数的类型都为Map
解决方法
在最新版本的JMockit中,Map不再是可模拟字段。我相信您将需要创建真正的Map类。因此,私有Map