我需要测试我项目的所有模型类。这是其中一堂课
public class TMyData{
private mVar1;
private mVar2;
...
private TMyData(){
}
public static TMyData fromString(String str){
...
}
public String toString(){
...
}
}
简单地说,测试应该是:
1) 创建一个随机的 TMyData
2) 调用 toString
3) 从字符串调用
4)检查它们是否相同
问题是创建随机的 TMyData。由于测试类是一个单独的类(TMyDataTest),我不能执行以下操作:
TMyData p = new TMyData(); //I can't, because its private
p.mVar1 = ...; // I can't because is also private
我不想仅仅因为测试而改变我所有的变量/方法的可见性......而且我也不希望用户可以访问私有变量(没有 getter 或 setter)
很多人一定有类似的问题,因为所有项目都有自己的模型。哪个是测试它的正确方法?