私が追加されているspring-cloud-starter-aws-parameter-store-config
中で説明したように、依存関係を春のドキュメント。さて、ユニットテストのために私はdisableパラメータストアの構成にしたいです。しかし、それを行うことができません。
私は、テスト/ application.propertiesに次のプロパティを設定してみました
aws.paramstore.enabled=false
また除くしようとしたAwsParamStoreBootstrapConfiguration.class
からAutoConfiguration
、まだ動作していません。
例外
例外を投げたファクトリメソッド「ssmClient」;:org.springframework.beans.BeanInstantiationException::[com.amazonaws.services.simplesystemsmanagement.AWSSimpleSystemsManagement]インスタンス化に失敗しましたによって引き起こされます ネストされた例外はcom.amazonaws.SdkClientExceptionです:地域プロバイダ鎖を介して地域を見つけることができません。地域を供給するためのビルダーまたはセットアップ環境の中で明示的な領域を設ける必要があります。org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiateで(SimpleInstantiationStrategy.java:185)〜[春豆-5.0.7.RELEASE.jar:5.0.7.RELEASE] org.springframework.beans.factoryで。 support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:582)〜[春豆-5.0.7.RELEASE.jar:5.0.7.RELEASE]:com.amazonaws.SdkClientException ... 83の共通フレームはによって引き起こさ省略しました:地域プロバイダ鎖を介して地域を見つけることができません。地域を供給するためのビルダーまたはセットアップ環境の中で明示的な領域を設ける必要があります。com.amazonaws.client.builder.AwsClientBuilder.configureMutablePropertiesで(:com.amazonaws.client.builder.AwsClientBuilder.setRegion(AwsClientBuilder.java:371)〜[ナAWS-javaの-SDK-コア1.11.336.jar]でAwsClientBuilder.java:337)〜[AWS-のJava SDKコア-1.11.336.jar:NA] com.amazonaws.client.builder.AwsSyncClientBuilder.build(AwsSyncClientBuilder.java:46)で〜[AWS-のJava SDK -core-1.11.336.jar:ORGでNA]:[AWS-javaの-SDK-SSM-1.11.336.jar〜com.amazonaws.services.simplesystemsmanagement.AWSSimpleSystemsManagementClientBuilder.defaultClient(AWSSimpleSystemsManagementClientBuilder.java:44)で] NA .springframework.cloud.aws.autoconfigure.paramstore.AwsParamStoreBootstrapConfiguration。
私は解決策を見つけ出すことができました。思われるSpringBootTest
試みをロードするためにssmClient
も、テストの設定クラスの前に、およびロードする前にapplication.properties
。ソリューションは、上のプロパティを指定することで無効paramstoreにある@SpringBootTest
自分自身
@SpringBootTest(classes = MyApp.class, properties = {"aws.paramstore.enabled=false"})
編集:
私はプロパティを(追加することによって、別のアプローチで無効paramstoreすることができたaws.paramstore.enabled=false
に)bootstrap.properties
ファイル。この1は、はるかに簡単な解決策であります