Spring Cloud 自动注册存根

2024-01-02 16:47 更新

如果使用@AutoConfigureWireMock,它将从文件系统或类路径(默认情况下,从file:src/test/resources/mappings)注册WireMock JSON存根。您可以使用注释中的stubs属性来自定义位置,该属性可以是Ant样式的资源模式或目录。对于目录,将附加*/.json以下代码显示了一个示例:

@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureWireMock(stubs="classpath:/stubs")
public class WiremockImportApplicationTests {

	@Autowired
	private Service service;

	@Test
	public void contextLoads() throws Exception {
		assertThat(this.service.go()).isEqualTo("Hello World!");
	}

}

实际上,WireMock总是从src/test/resources/mappings 以及 stubs属性中的自定义位置加载映射要更改此行为,还可以按照本文档下一节中的说明指定文件根。

如果您使用的是Spring Cloud Contract的默认存根jar,则您的存根将存储在/META-INF/group-id/artifact-id/versions/mappings/文件夹下。如果要从该位置,所有嵌入式JAR中注册所有存根,那么使用以下语法就​​足够了。

@AutoConfigureWireMock(port = 0, stubs = "classpath*:/META-INF/**/mappings/**/*.json")


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号