W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
使用Stub Runner引導(dǎo)程序的一種可能性是將其用作“煙霧測試”的存根的提要。這是什么意思?假設(shè)您不想將50個(gè)微服務(wù)部署到測試環(huán)境中以檢查您的應(yīng)用程序是否運(yùn)行正常。在構(gòu)建過程中,您已經(jīng)執(zhí)行了一組測試,但是您還想確保應(yīng)用程序的包裝是正確的。您可以做的是將應(yīng)用程序部署到環(huán)境中,啟動(dòng)該應(yīng)用程序并在其上運(yùn)行一些測試,以查看其是否正常運(yùn)行。我們可以稱這些測試為冒煙測試,因?yàn)樗鼈兊南敕ㄊ莾H檢查少數(shù)幾個(gè)測試場景。
這種方法的問題在于,如果您正在執(zhí)行微服務(wù),則很可能正在使用服務(wù)發(fā)現(xiàn)工具。Stub Runner引導(dǎo)程序允許您通過啟動(dòng)所需的存根并將其注冊到服務(wù)發(fā)現(xiàn)工具中來解決此問題。讓我們看一下使用Eureka進(jìn)行這種設(shè)置的示例。假設(shè)Eureka已經(jīng)在運(yùn)行。
@SpringBootApplication @EnableStubRunnerServer @EnableEurekaClient @AutoConfigureStubRunner public class StubRunnerBootEurekaExample { public static void main(String[] args) { SpringApplication.run(StubRunnerBootEurekaExample.class, args); } }
如您所見,我們想啟動(dòng)Stub Runner引導(dǎo)服務(wù)器@EnableStubRunnerServer
,啟用Eureka客戶端@EnableEurekaClient
,并且我們想打開樁頭運(yùn)行程序功能@AutoConfigureStubRunner
。
現(xiàn)在假設(shè)我們要啟動(dòng)此應(yīng)用程序,以便存根自動(dòng)注冊。我們可以通過運(yùn)行應(yīng)用程序java -jar ${SYSTEM_PROPS} stub-runner-boot-eureka-example.jar
來做到這一點(diǎn),其中${SYSTEM_PROPS}
將包含以下屬性列表
* -Dstubrunner.repositoryRoot=https://repo.spring.io/snapshot (1) * -Dstubrunner.cloud.stubbed.discovery.enabled=false (2) * -Dstubrunner.ids=org.springframework.cloud.contract.verifier.stubs:loanIssuance,org. * springframework.cloud.contract.verifier.stubs:fraudDetectionServer,org.springframework. * cloud.contract.verifier.stubs:bootService (3) * -Dstubrunner.idsToServiceIds.fraudDetectionServer= * someNameThatShouldMapFraudDetectionServer (4) * * (1) - we tell Stub Runner where all the stubs reside (2) - we don't want the default * behaviour where the discovery service is stubbed. That's why the stub registration will * be picked (3) - we provide a list of stubs to download (4) - we provide a list of
這樣,您部署的應(yīng)用程序可以通過服務(wù)發(fā)現(xiàn)將請求發(fā)送到啟動(dòng)的WireMock服務(wù)器。默認(rèn)情況下,極有可能在application.yml
中設(shè)置了1-3點(diǎn),因?yàn)樗鼈儾惶赡芨淖儭?/font>這樣,每次啟動(dòng)Stub Runner引導(dǎo)時(shí),您只能提供要下載的存根列表。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: