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

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

Å×½ºÆ® ÀÛ¼º

JUnit Å×½ºÆ®¸¦ ÀÛ¼ºÇÏ·Á¸é ¸ÕÀú junit.jar ¶óÀ̺귯¸®¸¦ ºôµå Ŭ·¡½º °æ·Î¿¡ Ãß°¡ÇØ¾ß ÇÕ´Ï´Ù. Eclipse ¼³Ä¡¿¡¼­´Â org.junit Ç÷¯±×Àο¡ JUnit°¡ Æ÷ÇԵ˴ϴÙ.

  1. ÇÁ·ÎÁ§Æ® "JUnitTest"¸¦ ÀÛ¼ºÇϽʽÿÀ.
  2. ÇÁ·ÎÁ§Æ®ÀÇ ºôµå °æ·Î Ư¼º ÆäÀÌÁö¸¦ ¿©½Ê½Ã¿À.
  3. ¶óÀ̺귯¸® ÅÇÀ¸·Î ÀüȯÇϽʽÿÀ.
  4. Ç÷¯±×ÀÎ µð·ºÅ丮¿¡¼­ org.junit¿¡ Æ÷ÇÔµÈ junit.jarÀ» ¿ÜºÎ JAR·Î ÇÁ·ÎÁ§Æ®¿¡ Ãß°¡ÇϽʽÿÀ.
Ãß°¡·Î JUnit ¼Ò½º¸¦ ã¾Æº¼ °æ¿ì, junitsrc.zipÀ» junit.jar¿¡ ÷ºÎÇϽʽÿÀ. ¼Ò½º zipÀº src/org.junit_3.8.1ÀÇ org.eclipse.jdt.source Ç÷¯±×Àο¡ ÀÖ½À´Ï´Ù.

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

  1. »õ ¸¶¹ý»ç¸¦ ¿©½Ê½Ã¿À(ÆÄÀÏ > ½Å±Ô > ±âŸ...).
  2. ¿ÞÂÊ ºÐÇÒâ¿¡¼­ Java > JUnitÀ» ¼±ÅÃÇÏ°í ¿À¸¥ÂÊ ºÐÇÒâ¿¡¼­ TestCase¸¦ ¼±ÅÃÇÑ ÈÄ ´ÙÀ½À» Ŭ¸¯ÇϽʽÿÀ.
  3. Å×½ºÆ® Ŭ·¡½ºÀÇ À̸§À¸·Î "TestFailure"¸¦ ÀÔ·ÂÇϽʽÿÀ.

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

  4. ¿Ï·á¸¦ Ŭ¸¯ÇÏ¿© Å×½ºÆ® Ŭ·¡½º¸¦ ÀÛ¼ºÇϽʽÿÀ.

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

public void testFailure() {
    fail();
}

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

Å×½ºÆ® ½ÇÇà

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

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

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

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

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

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

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

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

JUnit ½ÇÇà ±¸¼º

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

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

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

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

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

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

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

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

    Å×½ºÆ® ¼öÆ® ¸¶¹ý»ç

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

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

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

Copyright (c) 2000, 2003 IBM Corporation and others. All Rights Reserved.