Я использую Spring Cloud Contract для тестирования договоров на обмен сообщениями в нашей системе. Я создал контракт на стороне производителя, сгенерировал заглушки и подтвердил, что сгенерированный тест проходит, как я ожидаю. Однако, когда я пытаюсь настроить связанный тест на стороне потребителя, я получаю AbstractMethodError, которая, кажется, вызвана аннотацией AutoConfigureStubRunner.
зависимости pom.xml
...
<properties>
<spring-cloud-services-dependencies.version>1.5.0.RELEASE</spring-cloud-services-dependencies.version>
</properties>
...
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-contract-stub-runner</artifactId>
<scope>test</scope>
<version>${spring-cloud-contract.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-contract-stub-runner</artifactId>
<scope>test</scope>
<version>${spring-cloud-contract.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
...
Подпись класса тестирования на стороне потребителя
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {ConsumerApplicationRunner.class})
@AutoConfigureStubRunner(stubsMode = StubRunnerProperties.StubsMode.LOCAL, ids = {"com.example:producer-artifact"}, consumerName = "consumer", stubsPerConsumer = true)
public class MessagingTest {
Есть идеи?