1
ファイル読み込みクラスは私のコードがあるために:どのようにユニットテストは、プロパティは、私は、プロパティがここでファイルを読み込み、クラスのJUnitテストケースを記述しようとしています
public class PropertiesRetreiver {
private String foo = "";
private String foo1 = "";
private static String PROPERTIES_PATH ="data.properties";
public PropertiesRetreiver() throws IOException {
InputStream in = this.getClass().getResourceAsStream(PROPERTIES_PATH);
Properties properties = new Properties();
properties.load(in);
foo = properties.getProperty("foo");
foo1 = properties.getProperty("foo1");
}
public String getfoo() {
return foo;
}
public String getfoo1() {
return foo1;
}
}
誰かが私にテストケースのシナリオについての考えを与えることができます私は嘲笑してテストすることができますか?ご助力ありがとうございます。
まず、ファイルシステムにハードコードされた依存関係があるため、そのコードを適切に単体テストすることは難しいでしょう。ファイル名をコンストラクタのパラメータとして渡すことを検討できますか?そうすれば、単体テストで少なくとも異なるデータセットを試すことができます。何をテストするのか?コードはシンプルで、コンストラクタとゲッターが2つしかないので、テストする必要があります。 –
私のコンストラクタにファイルパスを追加しようとしました。しかし、それはプロパティファイルから何の価値も得られません。 – user6090970
プロパティ環境は依存していますか?つまり、ローカル用に1セット、CI用に1セット、プロダクション用にもう1セットですか?そこに3つのテストケースがあります。同じテクノロジを実行している環境はスタックしていますか?例えば。 Mac OS/Xローカル、CIOS上のCentos7、Red Hat Linuxの生産中? – MikeJRamsey56