私はクラス内でメソッドを持っています。内部ではAmazonS3Client.java
が呼び出され、AwsCredetialsProvider.getCredentials()
が呼び出されています。そのためには、私のテストクラスにAWS_ACCESS_KEY_ID
とAWS_SECRET_ACCESS_KEY
を設定する必要があります。私のプロジェクトでは、これらの値を環境変数に設定することはできません。mockitoを使用してAWS環境変数を設定する別の方法
私はAWSCredentialsProvider
とAWSCredentials
をモックしようとしており、資格情報を返すためにスタブを使用しました。しかし、それは次のようなエラーがスローされます。
com.amazonaws.AmazonClientException: Unable to load AWS credentials from any provider in the chain
at com.amazonaws.auth.AWSCredentialsProviderChain.getCredentials(AWSCredentialsProviderChain.java:131)
at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3648)
at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3607)
at com.amazonaws.services.s3.AmazonS3Client.listObjects(AmazonS3Client.java:600)
はさえ、私はあまりにも
MockEnvironment
、
ConfigurationProperties
を使用してこれらの値を設定しようとしています。しかし、何も起こらなかった。
これらの資格情報を模擬する方法はありますか?
私はMockitoJRunner
を使用しています。だから、私はそれをPowermockitoに変更することはできません。
編集: 私はS3からlistObjects()
を呼び出してファイルを取得したいと思います。これは、取得するAWS資格情報が必要なので、私が問題に直面しているところです。
すべてのメソッド呼び出しは、内部的に定義済みのクラスとメソッドを呼び出す場合にプロジェクトで指定されます。
を返されるオブジェクトを設定します。 –