RestApiÀÇJunitÅ×½ºÆ®¸¦½ÃÇàÇÒ¶§¿¡¸»ÀäMockMvc
ºñ°ø°³
( )
2018.09.10 21:01:27
RestApi ÀÇ JunitÅ×½ºÆ®¸¦ ½ÃÇàÇÒ ¶§¿¡ ¸»Àä (MockMvc)
À¸À¸ Á¦°¡ Áö±Ý µÎ½Ã°£Â° mockito¿¡ ½ÇÆÐÇØ¼­ ¸Ó¸®°¡ µðÁ×¹ÚÁ×À© ¤Ð¤Ð


Áú¹® Çϳª ¹®Áú¹®ÁúÇϰڽÀ´Ï´Ù....


1. restful api ÀÇ Å×½ºÆ®¸¦ ÇÏ·Á°í ÇÕ´Ï´Ù.
ÀÌ api´Â postmappingÀÌ µÅÀÖ½À´Ï´Ù.

2. api°¡ xxxModelÀ̶ó´Â Ŭ·¡½º¸¦ ºÎ¸¨´Ï´Ù. ¸ðµ¨Àº ¿ÜºÎ ¼­ºñ½º¿Í µ¥ÀÌÅ͸¦ ÁÖ°í¹Þ´Â ¿ªÇÒÀÔ´Ï´Ù.

Param param = new xxxModel(Param param);

ÀÇ Çü½ÄÀ¸·Î »ç¿ëÇϰí ÀÖ½À´Ï´Ù.

3. ¸ðµ¨ ¾È¿¡¼­´Â executeModel(param) ¸Þ¼Òµå¸¦ ÀÌ¿ë, param.setResult ·Î ¿ÜºÎ¿ÍÀÇ Åë½Å°á°ú¸¦ ¼ÂÆÃÇØ¼­ api·Î º¸³»ÁÝ´Ï´Ù.

4. api¿¡¼­´Â ±× °á°ú¸¦ °¡Áö°í if(param.getResult ======== false) then throw new exception ÇϰíÀÖ½À´Ï´Ù¿ä


¿©±â¼­ ÀÌ model À» mockÈ­ ÇØ¼­ param.getResultÀÇ °ªÀÌ true ³ª false ·Î Å×½ºÆ®Å¬·¡½º¿¡¼­ ÁöÁ¤ÇÒ ¼ö ÀÖµµ·Ï ¸¸µé°í ½Í½À´Ï´Ù.

param.setResult(true / false);
when(mock.xxxModel.executeModel(any param.class)).thenReturn(param)
·Î ÇØ³õ°í

mockmvc.perform(post()).content()......andExpect();
·Î apiÅ×½ºÆ®¸¦ ÇÏ·Á°í Çϴµ¥¿ä


ÀÚ²Ù ¾ê°¡ mocked modelÀÌ ¾Æ´Ï¶ó real method ¸¦ º¸°íÀ־... ÀÌ°É ¾î¶»°Ô ÇØ¾ßÇÒÁö ¸ð¸£°Ú¾î¿µ ¤Ð¤Ð


Ȥ½Ã Á¦°¡ ³õÄ£°÷ÀÌ ÀÖÀ»±î¿ä..?


Áú¹® | 3,009¸íÀÌ Àоú¾î¿ä.


6°³ÀÇ ´ñ±Û
1 ºñ°ø°³
Injection À» ¸øÇØÁ༭ ±×·±°Å¿¡¿ä... ÀÌ°Ç ÄÚµå ¾Èº¸¸é Á¤È®ÇÏ°Ô ´äÇØµå¸®±â ¾î·Á¿ò
2018/09/10 21:53
2 ºñ°ø°³
gist °°Àºµ¥´Ù ¿Ã·ÁÁֽøé Á¦°¡ ºÁµå¸±¼öÀÖ½À´Ï´Ù
2018/09/10 21:53
3 ºñ°ø°³
º¸´Ï±ñ ÄÁÅØ½ºÆ® ¶ç¿ì°í Å×½ºÆ® ÇÏ½Ã´Â°Í °°Àºµ¥ @Bean »ý¼º·ÎÁ÷À» Å×½ºÆ®¶§´Â ´Ù¸£°Ô Ÿµµ·Ï ±¸¼ºÇؾߵ˴ϴÙ.
2018/09/10 21:54
4 ºñ°ø°³
1,2,3 ´äº¯ °¨»çÇմϴ٤ФÐ

Àúµµ ÀÎÁ§¼ÇÀÌ ¹®Á¦ÀÎ°Í °°´Ù°í »ý°¢Àº Çߴµ¥ ¾î¶»°Ô ÁÖÀÔÇØÁà¾ßÇÒÁö °¨ÀÌ ¾ÈÀâÈ÷³×¿© ¤Ð¤Ð

ȸ»ç ³»ºÎ ½Ã½ºÅÛÀÌ¶ó¼­ ¾îµð ¿Ã¸®±â ½±Áöµµ ¾Ê°í...

Á¦°¡ ÇØ°áÇØº¸·Á°í Çߴµ¥ µÞÀÚ¸® °í¼öÇü´Ô¿¡°Ô »ó´ãÇØ¼­ Ç®¾î³ª°¡°Ú½À´Ï´Ù...¤Ð¤Ð


¿äÁòµé¾î ±âÃʰ¡ ºÎ½ÇÇÑ°Ô Àý½ÇÇÏ°Ô ´À²¸Áö³×¿© ¾îÈåÈæ
2018/09/11 01:16
5 ºñ°ø°³
https://www.baeldung.com/injecting-mocks-in-spring
2018/09/11 10:10
6 ºñ°ø°³
5/ ¶ì¿ë °¨»çÇÕ´Ï´Ù ¼¼¹ø Á¤µ¶ÇϰڽÀ´Ï´ç ÂPÂP!!
2018/09/11 20:31
°Ô½ÃÆÇ ¸ñ·ÏÀ¸·Î µ¹¾Æ°¡±â