私は以下のようなprotectedメソッドを持っています。これはConstants.javaファイルの最終的な静的変数を使用します。最終的な静的変数を変更してメソッドをテストする
class A {
protected Configuration connectConfig() {
ConfigDescriptor desc = new ConfigDescriptor.Builder()
.project(Constants.REMOTE_CONFIG_PROJECT_NAME)
.name(Constants.REMOTE_CONFIG_PROJECT_CONFIG_NAME)
.version(Constants.REMOTE_CONFIG_PROJECT_VERSION)
.build();
return ConfigProvider.of(desc, getClass().getClassLoader());
}
public boolean process() {
Configuration config = connectConfig();
if(config == null) {
return false;
}
}
}
今私は失敗するremote config
のために、この方法process
ユニットテストしたいです。
に接続するための適切な値があるので、私はちょうどprocess()
メソッドをテストすると合格します。テストのために、私はこれらの値をリモートの設定に変更したいですreturns
null
;
注:Mockito
を使用して値をモックさせたくありません。
私は混乱しています...なぜあなたは一時的にconstants.javaの値を変更できませんか? – Austin
@Austin:彼はCIジョブの一部としてテストを実行するので、実際の値を変更したくないです。また、値を疑似するためにMockitoを使用したくありません。 – tushR
コードを変更することはできませんか? – Austin