私はSpringブートベースのアプリケーション用のjunitsを作成しています。beanはapplication-.propertiesで指定されたいくつかの構成パラメータに依存しています。 私のJUnitの中で、私は、プロファイルを設定している場合、私は豆を生成しています私の設定のクラス、私のJUnitでアプリケーションコンテキストのエラーを検出するspring junit
@Configuration
public class AppConfig{
@Value("${MyProperty}")
private String myProperty;
@Bean
public myBean bean1() throws MyException{
if(myProperty.contentEquals("abc"){
throw MyException("Value abc not allowed for bean1");
}
}
では、私は、このシナリオを検出したいと「アプリケーションの起動に失敗した」と言って、それでエラーが出て実行しないで到達私の前の方法または試験方法。
junitが失敗せず、myexceptionも検出できるようにするにはどうすればよいですか。 私が必要とするのは、アプリケーションコンテキストの作成が失敗することですが、私のユニットテストは合格になります。
ありがとうございます!
を私は、プロパティアノテーションの条件を理解し、あなたに感謝提案。 これは、Beanが作成されていなくてもアプリケーションが起動するという別の問題を引き起こします。私はそれを起こさせるべきではありません。 私の理解からは、Beanファクトリメソッドで例外をスローすることによってのみ可能です。 これは私が現在私のコードで行っていることです。私のユニットテストではそれを検出できますか?その場合は – Avis
例外を検出するためにテストメソッドのコンテキストを直接起動する必要があります – dimitrisli
どうすればよいですか?私は単体テストにSpringRunnerを使用します。 – Avis