第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

@WebMvcTest 出于某種原因創(chuàng)建了多個(gè)控制器

@WebMvcTest 出于某種原因創(chuàng)建了多個(gè)控制器

喵喵時(shí)光機(jī) 2022-07-27 19:59:33
我正在嘗試使用@WebMvcTest創(chuàng)建控制器測試,據(jù)我所知,當(dāng)我將@WebMvcTest(ClientController.class)注釋放在測試類中時(shí),它不應(yīng)該創(chuàng)建很多bean,而只是這個(gè)控制器需要的bean .我正在使用@MockBean 模擬此控制器所需的 bean ,但不知何故,它失敗了,但有一個(gè)例外,即該控制器不需要但另一個(gè)服務(wù)的另一個(gè)服務(wù)的“沒有合格的 bean” 。所以這個(gè)測試失敗了:@RunWith(SpringRunner.class)@WebMvcTest(controllers = ClientController.class)public class ClientControllerTest {    @MockBean    ClientService clientService;    @Test    public void getClient() {        assertEquals(1,1);    }}我創(chuàng)建了一個(gè)相同版本(2.0.1)的空 Spring Boot 項(xiàng)目,并嘗試在那里創(chuàng)建測試。它工作得很好。所以我的問題可能是因?yàn)槲业捻?xiàng)目有很多依賴項(xiàng),但也許在這種情況下有一些常見的做法?什么會(huì)弄亂@WebMvcTest邏輯?
查看完整描述

1 回答

?
汪汪一只貓

TA貢獻(xiàn)1898條經(jīng)驗(yàn) 獲得超8個(gè)贊

我找到了解決方法。不使用@WebMvcTest 和@MockBean,而是手動(dòng)創(chuàng)建所有內(nèi)容:


//@WebMvcTest(ClientController.class)

@RunWith(SpringRunner.class)

public class ClientControllerTest {


    private MockMvc mockMvc;

    @Mock

    ClientService clientService;


    @Before

    public void setUp() {

        mockMvc = MockMvcBuilders.standaloneSetup(

                new ClientController(clientService)

        ).build();

}

適用于 Spring 1.4.X 和 Spring Boot 2.X(那里和那里有不同的異常),但仍然沒有解釋為什么 @WebMvcTest 不起作用


查看完整回答
反對 回復(fù) 2022-07-27
  • 1 回答
  • 0 關(guān)注
  • 97 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號