Я пытаюсь настроить интеграционные тесты для aws -sqs-сообщения, но мои тесты не запускаются из-за сбоя при создании bean-компонента amazonSQSAsyn c для тестов.
Пока что я создал конфигурацию класс внутри моего базового класса, пример
@ExtendWith(SpringExtension.class)
@SpringBootTest(webEnvironment = RANDOM_PORT, classes = TestSQSApplication.class)
@ActiveProfiles("TEST")
public abstract class IntTest {
@TestConfiguration
@EnableSqs
public static class AwsSqsConfiguration {
@Bean(destroyMethod = "shutdown")
@Primary
@Qualifier("amazonSQSAsync")
public AmazonSQSAsync amazonSqsAsync(AWSCredentialsProvider awsCredentialsProvider) {
return AmazonSQSAsyncClientBuilder.standard()
.withCredentials(awsCredentialsProvider)
.withRegion("us-east-1")
.build();
}
@Bean
public AWSCredentialsProvider awsCredentialsProvider() {
return new AWSStaticCredentialsProvider(new BasicAWSCredentials("accessKey", "secretKey"));
}
}
}
Все мои предыдущие тесты работали нормально, пока я не добавил SQS, затем он выдал эту ошибку для интеграционных тестов
Ошибка создания бина с именем ' amazonSqsAsyn c 'определено в classpath
Приложение правильно настроено для SQS и может принимать и отправлять сообщения в очереди, однако я не могу найти правильный пример о том, как проверить это в интеграциях.
При запуске приложения с этими тестовыми конфигурациями выдается одинаковая ошибка