JUnit Å×½ºÆ® ÀÛ¼º ¹× ½ÇÇà

ÀÌ ¼½¼Ç¿¡¼­´Â JUnit Å×½ºÆ® ÇÁ·¹ÀÓ¿öÅ©¸¦ »ç¿ëÇÏ¿© Å×½ºÆ®¸¦ ÀÛ¼ºÇÏ°í ½ÇÇàÇÕ´Ï´Ù. JUnit¸¦ ½ÃÀÛÇÏ·Á¸é JUnit CookbookÀ» ÂüÁ¶ÇϽʽÿÀ.

Å×½ºÆ® ÀÛ¼º

ÇÁ·ÎÁ§Æ® "JUnitTest"¸¦ ÀÛ¼ºÇϽʽÿÀ. ÀÌÁ¦ ù ¹øÂ° Å×½ºÆ®¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. TestCaseÀÇ ¼­ºêŬ·¡½º¿¡¼­ Å×½ºÆ®¸¦ ±¸ÇöÇÕ´Ï´Ù. Ç¥ÁØ Å¬·¡½º ¸¶¹ý»ç³ª Ư¼ö Å×½ºÆ® ÄÉÀ̽º ¸¶¹ý»ç¸¦ »ç¿ëÇÏ¿© À̸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

  1. »õ·Î ÀÛ¼º ¸¶¹ý»ç¸¦ ¿©½Ê½Ã¿À(ÆÄÀÏ > »õ·Î ÀÛ¼º > JUnit Å×½ºÆ® ÄÉÀ̽º).
  2. »õ JUnit 3.8.1 Å×½ºÆ®¸¦ ¼±ÅÃÇϰí Å×½ºÆ® Ŭ·¡½ºÀÇ À̸§À¸·Î "TestFailure"¸¦ ÀÔ·ÂÇϽʽÿÀ.

    TestCase ÀÛ¼º ¸¶¹ý»ç ÆäÀÌÁö 1

    Âü°í: JUnit 4 Å×½ºÆ®¸¦ »ç¿ëÇÏ·Á´Â °æ¿ì, ÄÄÆÄÀÏ·¯ Áؼö°¡ 5.0À¸·Î ¼³Á¤µÇ¾î ÀÖ´ÂÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù.

  3. ºôµå °æ·Î¿¡ junit ¶óÀ̺귯¸®¸¦ Ãß°¡Ç϶ó´Â °æ°í ¸Þ½ÃÁö°¡ Ç¥½ÃµË´Ï´Ù. junit ¶óÀ̺귯¸®¸¦ ÀÚµ¿À¸·Î Ãß°¡ÇÏ·Á¸é ¿©±â¸¦ Ŭ¸¯ ¸µÅ©¸¦ »ç¿ëÇϽʽÿÀ.
  4. ¿Ï·á¸¦ Ŭ¸¯ÇÏ¿© Å×½ºÆ® Ŭ·¡½º¸¦ ÀÛ¼ºÇϽʽÿÀ.

½ÇÆÐÇÑ test ¸Þ¼Òµå¸¦ TestFailure Ŭ·¡½º¿¡ Ãß°¡ÇϽʽÿÀ. test ¸Þ¼Òµå¸¦ ÀÔ·ÂÇÏ´Â ºü¸¥ ¹æ¹ýÀº Å×½ºÆ® ÅÛÇø®Æ®¸¦ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ ¹æ¹ýÀ» ¼öÇàÇÏ·Á¸é Ä¿¼­¸¦ Ŭ·¡½º ¼±¾ð ¾È¿¡ ³õÀ¸½Ê½Ã¿À. "test"¸¦ ÀÔ·ÂÇϰí Ctrl+Space¸¦ ´­·¯¼­ ÄÚµå Áö¿øÀ» Ȱ¼ºÈ­ÇÑ ÈÄ "test" ÅÛÇø®Æ®¸¦ ¼±ÅÃÇϽʽÿÀ. ÀÛ¼ºÇÑ ¸Þ¼ÒµåÀÇ À̸§À» testFailure·Î º¯°æÇϰí fail() ¸Þ¼Òµå¸¦ È£ÃâÇϽʽÿÀ.

public void testFailure() throws Exception {
    fail();
}

ÀÌÁ¦ ù ¹øÂ° Å×½ºÆ®¸¦ ½ÇÇàÇÒ Áغñ°¡ µÇ¾ú½À´Ï´Ù.

Å×½ºÆ® ½ÇÇà

TestFailure¸¦ ½ÇÇàÇÏÇÏ·Á¸é µµ±¸ ¸ðÀ½¿¡¼­ ½ÇÇà µå·Ó ´Ù¿î ¸Þ´º¸¦ Ȱ¼ºÈ­ÇÏ°í ½ÇÇà µµ±¸ > JUnit Å×½ºÆ®¸¦ ¼±ÅÃÇϽʽÿÀ. JUnit º¸±â¿¡¼­ Å×½ºÆ® °á°ú¸¦ °Ë»çÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ º¸±â´Â Å×½ºÆ® ½ÇÇà ÁøÇà ¹× »óŸ¦ Ç¥½ÃÇÕ´Ï´Ù.

½ÇÆÐÇÑ Å×½ºÆ®

º¸±â´Â Å×½ºÆ® ½ÇÇàÀ» ½ÃÀÛÇÒ ¶§¸¶´Ù ÇöÀç Perspective¿¡ Ç¥½ÃµË´Ï´Ù. JUnit º¸±âÀÇ Æí¸®ÇÑ ¹è¿­Àº ÀÌ º¸±â¸¦ ºü¸¥ º¸±â·Î ³õ´Â °ÍÀÔ´Ï´Ù. JUnit º¸±â¿¡´Â µÎ °³ÀÇ ÅÇÀÌ ÀÖ½À´Ï´Ù. Çϳª´Â ½ÇÆÐ ¸ñ·ÏÀ» Ç¥½ÃÇÏ°í ´Ù¸¥ ÅÇÀº Àüü Å×½ºÆ® ¸ðÀ½À» Æ®¸®·Î Ç¥½ÃÇÕ´Ï´Ù. ½ÇÆÐ ÃßÀû¿¡¼­ ÇØ´ç ÇàÀ» µÎ ¹ø Ŭ¸¯ÇÏ¿© ½ÇÆÐ¿¡¼­ ÇØ´ç ¼Ò½º·Î Ž»öÇÒ ¼ö ÀÖ½À´Ï´Ù.

JUnit º¸±â¸¦ ºü¸¥ º¸±â·Î ³õ°í Å×½ºÆ®°¡ Åë°úµÇµµ·Ï testFailure() ¸Þ¼Òµå¿¡¼­ fail() ¹®À» Á¦°ÅÇÑ ÈÄ Å×½ºÆ®¸¦ ´Ù½Ã ½ÃµµÇϽʽÿÀ. º¸±â µµ±¸ ¸ðÀ½¿¡¼­ Àç½ÇÇà ´ÜÃ߸¦ ´­·¯¼­ Å×½ºÆ®¸¦ Àç½ÇÇàÇϰųª ½ÇÇà µå·Ó ´Ù¿îÀ» Ȱ¼ºÈ­ÇÏ¿© ¸¶Áö¸·À¸·Î ½ÇÇàÇÑ ÇÁ·Î±×·¥À» Àç½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. À̹ø¿¡´Â Å×½ºÆ®¿¡ ¼º°øÇÑ °ÍÀÔ´Ï´Ù. Å×½ºÆ®¿¡ ¼º°øÇßÀ¸¹Ç·Î, JUnit º¸±â´Â ÆË¾÷µÇÁö ¾ÊÁö¸¸ ¼º°ø Ç¥½Ã±â°¡ JUnit º¸±â ¾ÆÀÌÄÜ¿¡ Ç¥½ÃµÇ°í »óÅ ǥ½ÃÁÙÀº Å×½ºÆ® °á°ú¸¦ Ç¥½ÃÇÕ´Ï´Ù. Å×½ºÆ® Àç½ÇÇà¿¡ ´ëÇÑ ¾Ë¸²À¸·Î, ½ÇÇà ÈÄ ÀÛ¾÷°ø°£ ÄÁÅÙÃ÷¸¦ º¯°æÇÒ ¶§¸¶´Ù º¸±â ¾ÆÀÌÄÜ¿¡ "*"°¡ Ç¥½ÃµË´Ï´Ù.

Å×½ºÆ® ¿Ï·á - Å×½ºÆ® ½ÇÇàÀÌ ¿Ï·áµÇ¾ú½À´Ï´Ù.
Å×½ºÆ®¿¡ ¼º°øÇßÀ¸³ª ÀÛ¾÷°ø°£ÀÌ º¯°æµÇ¾úÀ½ - Å×½ºÆ®°¡ Á¦´ë·Î ½ÇÇàµÇ¾úÀ¸³ª ÃÖÁ¾ Å×½ºÆ® ½ÇÇà ÀÌÈÄ ÀÛ¾÷°ø°£ ÄÁÅÙÃ÷°¡ º¯°æµÇ¾ú½À´Ï´Ù.

À§¿¡ ¼³¸íµÈ ´ë·Î Å×½ºÆ® ÄÉÀ̽º¸¦ ½ÇÇàÇÏ´Â °Í ¿Ü¿¡µµ ´ÙÀ½À» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

Å×½ºÆ® ±¸¼º »ç¿ëÀÚ Á¤ÀÇ

¸Å°³º¯¼ö¸¦ Àü´ÞÇϰųª Å×½ºÆ® ½ÇÇà¿¡ ÇØ´çÇÏ´Â ¼³Á¤À» »ç¿ëÀÚ Á¤ÀÇÇÏ·Á¸é ½ÇÇà ±¸¼º ´ëÈ­ »óÀÚ¸¦ ¿±´Ï´Ù. µµ±¸ ¸ðÀ½ÀÇ ½ÇÇà µå·Ó ´Ù¿î ¸Þ´º¿¡¼­ ½ÇÇà ...À» ¼±ÅÃÇϽʽÿÀ.

JUnit ½ÇÇà ±¸¼º

ÀÌ ´ëÈ­ »óÀÚ¿¡¼­ ½ÇÇàÇÒ Å×½ºÆ®, Àμö, ·±Å¸ÀÓ Å¬·¡½º °æ·Î ¹× Java ·±Å¸ÀÓ È¯°æÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

Å×½ºÆ® ½ÇÆÐ µð¹ö±ë

Å×½ºÆ® ½ÇÆÐÀÇ °æ¿ì ´ÙÀ½ ´Ü°è¸¦ µû¶ó À̸¦ µð¹ö±×ÇÒ ¼ö ÀÖ½À´Ï´Ù.

  1. JUnit º¸±âÀÇ ½ÇÆÐ ÅÇ¿¡¼­ ½ÇÆÐ Ç׸ñÀ» µÎ ¹ø Ŭ¸¯ÇÏ¿© ÆíÁý±â¿¡¼­ ÇØ´ç ÆÄÀÏÀ» ¿©½Ê½Ã¿À.
  2. test ¸Þ¼ÒµåÀÇ ½ÃÀÛ ºÎºÐ¿¡ Áß´ÜÁ¡À» ¼³Á¤ÇϽʽÿÀ.
  3. Å×½ºÆ® ÄÉÀ̽º¸¦ ¼±ÅÃÇÏ°í µð¹ö±× µå·Ó ´Ù¿î¿¡¼­ µð¹ö±× > JUnit Å×½ºÆ®¸¦ ½ÇÇàÇϽʽÿÀ.

JUnit ½ÇÇà ±¸¼ºÀº "Ȱ¼ºÈ­ »óÅ Áö¼Ó" ¿É¼ÇÀÌ ¼³Á¤µÇ¾î ÀÖ½À´Ï´Ù. Java °¡»ó ½Ã½ºÅÛÀÌ "ÇÖ ÄÚµå ´ëü"¸¦ Áö¿øÇÏ´Â °æ¿ì, Äڵ带 ¼öÁ¤Çϰí Àüü Å×½ºÆ® ½ÇÇàÀ» Àç½ÃÀÛÇÏÁö ¾Ê°í Å×½ºÆ®¸¦ ´Ù½Ã ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¿É¼ÇÀ» »ç¿ë °¡´ÉÇÏ°Ô ÇÏ·Á¸é JUnit ½ÇÇà ±¸¼º¿¡¼­ µð¹ö±ëÇÒ ¶§ Å×½ºÆ® ½ÇÇà ÈÄ ½ÇÇà ÁßÀÎ JUnit º¸°ü ¼±ÅöõÀ» ¼±ÅÃÇϽʽÿÀ.

Å×½ºÆ® ½ºÀ§Æ® ÀÛ¼º

JUnit TestSuite ¸¶¹ý»ç´Â Å×½ºÆ® ½ºÀ§Æ®ÀÇ ÀÛ¼ºÀ» µµ¿ó´Ï´Ù. ¸ðÀ½¿¡ ¼ÓÇØ¾ß Çϴ Ŭ·¡½º ¼¼Æ®¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù.

  1. »õ·Î ÀÛ¼º ¸¶¹ý»ç¸¦ ¿©½Ê½Ã¿À.
  2. Java > JUnit > JUnit Å×½ºÆ® ½ºÀ§Æ®¸¦ ¼±ÅÃÇÑ ÈÄ ´ÙÀ½À» Ŭ¸¯ÇϽʽÿÀ.
  3. Å×½ºÆ® ¸ðÀ½ Ŭ·¡½ºÀÇ À̸§À» ÀÔ·ÂÇϽʽÿÀ. (±ÔÄ¢Àº ±âº»ÀûÀ¸·Î ³ªÅ¸³ª´Â "AllTests"¸¦ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù.)

    Å×½ºÆ® ½ºÀ§Æ® ¸¶¹ý»ç

  4. ¸ðÀ½¿¡ Æ÷ÇÔÇØ¾ß Çϴ Ŭ·¡½º¸¦ ¼±ÅÃÇϽʽÿÀ. ÇöÀç´Â ´ÜÀÏ Å×½ºÆ® Ŭ·¡½º¸¸ ÀÖÁö¸¸ ³ªÁß¿¡ ¸ðÀ½¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

µÎ °¡Áö ¹æ¹ýÀ¸·Î Å×½ºÆ® ¸ðÀ½¿¡¼­ Å×½ºÆ® Ŭ·¡½º¸¦ Ãß°¡ ¶Ç´Â Á¦°ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.

Âü°í: ¸¶¹ý»ç¿¡¼­´Â µÎ °³ÀÇ ¸¶Ä¿, //$JUnit-BEGIN$ ¹× //$JUnit-END$¸¦ ÀÛ¼ºµÈ Å×½ºÆ® ½ºÀ§Æ® Ŭ·¡½º¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÇÏ¿© ¸¶¹ý»ç¿¡¼­ ±âÁ¸ Å×½ºÆ® ½ºÀ§Æ® Ŭ·¡½º¸¦ °»½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸¶Ä¿ »çÀÌÀÇ ÄÚµå´Â ÆíÁýÇÏÁö ¾Ê´Â °ÍÀÌ ÁÁ½À´Ï´Ù.