W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在默認(rèn)的MockMvc中使用Spring Cloud Contract驗(yàn)證程序時(shí),您需要為所有生成的驗(yàn)收測(cè)試創(chuàng)建基本規(guī)范。在此類中,您需要指向一個(gè)端點(diǎn),該端點(diǎn)應(yīng)進(jìn)行驗(yàn)證。
package org.mycompany.tests import org.mycompany.ExampleSpringController import com.jayway.restassured.module.mockmvc.RestAssuredMockMvc import spock.lang.Specification class MvcSpec extends Specification { def setup() { RestAssuredMockMvc.standaloneSetup(new ExampleSpringController()) } }
如果需要,您還可以設(shè)置整個(gè)上下文。
import io.restassured.module.mockmvc.RestAssuredMockMvc; import org.junit.Before; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.web.context.WebApplicationContext; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = SomeConfig.class, properties="some=property") public abstract class BaseTestClass { @Autowired WebApplicationContext context; @Before public void setup() { RestAssuredMockMvc.webAppContextSetup(this.context); } }
如果使用EXPLICIT
模式,則可以使用基類類似地初始化整個(gè)測(cè)試的應(yīng)用程序,就像在常規(guī)集成測(cè)試中可能會(huì)發(fā)現(xiàn)的那樣。
import io.restassured.RestAssured; import org.junit.Before; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.web.server.LocalServerPort import org.springframework.test.context.junit4.SpringRunner; import org.springframework.web.context.WebApplicationContext; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT, classes = SomeConfig.class, properties="some=property") public abstract class BaseTestClass { @LocalServerPort int port; @Before public void setup() { RestAssured.baseURI = "http://localhost:" + this.port; } }
如果使用JAXRSCLIENT
模式,則此基類還應(yīng)包含一個(gè)protected WebTarget webTarget
字段。目前,測(cè)試JAX-RS API的唯一選項(xiàng)是啟動(dòng)web服務(wù)器。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: