プロジェクトのすべてのモデル クラスをテストする必要があります。これがクラスの1つです
public class TMyData{
private mVar1;
private mVar2;
...
private TMyData(){
}
public static TMyData fromString(String str){
...
}
public String toString(){
...
}
}
簡単に言えば、テストは次のようになります。
1) ランダムな TMyData を作成する
2) 文字列への呼び出し
3) 文字列から呼び出す
4)それらが同じであることを確認してください
問題は、ランダムな TMyData を作成することです。テスト クラスは別のクラス (TMyDataTest) であるため、次のことはできません。
TMyData p = new TMyData(); //I can't, because its private
p.mVar1 = ...; // I can't because is also private
テストのためだけに、すべての変数/メソッドの可視性を変更したくありません...また、ユーザーがプライベート変数にアクセスできるようにしたくありません(ゲッターもセッターもありません)
すべてのプロジェクトには独自のモデルがあるため、多くの人が同様の問題を抱えていたに違いありません。それをテストする適切な方法はどれですか?