关于Spring Cloud合同的小问题。
我正试图为我的spring健康端点写一份基本合同。
它是一个springwebflux2.4.1项目,使用junit5jupiter 5.7.0,我是服务器(我向我的客户机公开了actuator健康端点,因此,我想编写契约)。
因此,我导入了执行器jar和合同验证器:
<artifactId>spring-boot-starter-actuator</artifactId>
<artifactId>spring-cloud-starter-contract-verifier</artifactId>
我只是在我的资源文件夹中写了一个简单的契约,删除了其他所有内容:
request:
method: GET
url: /actuator/health
headers:
Content-Type: application/json
response:
status: 200
运行mvn clean install时,我得到:
target/generated-test-sources/contracts/org/springframework/cloud/contract/verifier/tests/ContractVerifierTest.java:[3,17] cannot find symbol
symbol: class Test
location: package org.junit
target/generated-test-sources/contracts/org/springframework/cloud/contract/verifier/tests/ContractVerifierTest.java:[4,17] cannot find symbol
symbol: class Rule
location: package org.junit
target/generated-test-sources/contracts/org/springframework/cloud/contract/verifier/tests/ContractVerifierTest.java:[15,10] cannot find symbol
symbol: class Test
location: class org.springframework.cloud.contract.verifier.tests.ContractVerifierTest
什么可能是根本原因,以及如何解决它请?
谢谢您
1条答案
按热度按时间iaqfqrcu1#
显然,您选择的是最新的启动版本,而不是最新的spring云契约版本,该版本假设您使用的是junit5,并且您的导入显示您正在生成junit4测试类。要么设置
testFramework
属性到JUNIT5
或者迁移到最新的springcloudcontract3.0.0插件,默认情况下使用junit5。