Spring Cloud 自動(dòng)注冊(cè)存根

2024-01-02 16:47 更新

如果使用@AutoConfigureWireMock,它將從文件系統(tǒng)或類路徑(默認(rèn)情況下,從file:src/test/resources/mappings)注冊(cè)WireMock JSON存根。您可以使用注釋中的stubs屬性來自定義位置,該屬性可以是Ant樣式的資源模式或目錄。對(duì)于目錄,將附加*/.json。以下代碼顯示了一個(gè)示例:

@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!");
	}

}

實(shí)際上,WireMock總是從src/test/resources/mappings 以及 stubs屬性中的自定義位置加載映射。要更改此行為,還可以按照本文檔下一節(jié)中的說明指定文件根。

如果您使用的是Spring Cloud Contract的默認(rèn)存根jar,則您的存根將存儲(chǔ)在/META-INF/group-id/artifact-id/versions/mappings/文件夾下。如果要從該位置,所有嵌入式JAR中注冊(cè)所有存根,那么使用以下語(yǔ)法就??足夠了。

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


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)