ÊÖ»úÕ¾
ÍøÍ¨·ÖÕ¾
µçÐÅÖ÷Õ¾
ÃÜ¡¡Âë:
Óû§Ãû£º
µ±Ç°Î»Öà : Ö÷Ò³>³ÌÐòÉè¼Æ>Java¼¼Êõ>Áбí

Ñ­Ðò½¥½øÑ§Ï°JUnit

À´Ô´£º»¥ÁªÍø ×÷Õߣºwest263.com ʱ¼ä£º2008-02-23
Î÷²¿ÊýÂë-È«¹úÐéÄâÖ÷»ú10Ç¿£¡40ÓàÏîÐéÄâÖ÷»ú¹ÜÀí¹¦ÄÜ,È«¹úÁìÏÈ!Ë«Ïß¶àÏßÐéÄâÖ÷»úÄϱ±·ÃÎʳ©Í¨ÎÞ×è!Ãâ·ÑÔùËÍÆóÒµÓʾÖ,.CNÓòÃû,×ÔÖú½¨Õ¾480ÔªÆð,Ãâ·ÑÊÔÓÃ7Ìì,ÂúÒâÔÙ¸¶¿î! P4Ö÷»ú×âÓÃ799Ôª/ÔÂ.Ô¸¶Ãâѹ½ð!
¿ª·¢ÈËÔ±JUnit Ñ­Ðò½¥½øÑ§Ï°JUnit ×÷ÕߣºMichel Casabianca ʹÓÃ×îÁ÷ÐеĿª·Å×ÊÔ´²âÊÔ¿ò¼Ü֮һѧϰµ¥Ôª²âÊÔ»ù´¡¡£ ʹÓÃJUnit¿ÉÒÔ´óÁ¿¼õÉÙJava´úÂëÖгÌÐò´íÎóµÄ¸öÊý£¬JUnitÊÇÒ»ÖÖÁ÷Ðеĵ¥Ôª²âÊÔ¿ò¼Ü£¬ÓÃÓÚÔÚ·¢²¼´úÂë֮ǰ¶ÔÆä½øÐе¥Ôª²âÊÔ¡£ÏÖÔÚÈÃÎÒÃÇÀ´ÏêϸÑо¿ÈçºÎʹÓÃÖîÈçJUnit¡¢AntºÍOracle9i JDeveloperµÈ¹¤¾ßÀ´±àдºÍÔËÐе¥Ôª²âÊÔ¡£ ΪʲôʹÓÃJUnit£¿ ¶àÊý¿ª·¢ÈËÔ±¶¼Í¬ÒâÔÚ·¢²¼´úÂë֮ǰӦµ±¶ÔÆä½øÐвâÊÔ£¬²¢ÀûÓù¤¾ß½øÐлع飨regression£©²âÊÔ¡£×öÕâÏ×÷µÄÒ»¸ö¼òµ¥·½·¨ÊÇÔÚËùÓÐJavaÀàÖÐÒÔmain()·½·¨ÊµÊ©²âÊÔ¡£ÀýÈ磬¼ÙÉèʹÓÃISO¸ñʽ£¨ÕâÒâζ×ÅÓÐÒ»¸öÒÔÕâÒ»¸ñʽ×÷Ϊ²ÎÊýµÄ¹¹ÔìÆ÷ºÍ·µ»ØÒ»¸ö¸ñʽ»¯µÄISO×Ö·û´®µÄtoString()·½·¨£©ÒÔ¼°Ò»¸öGMTÊ±ÇøÀ´±àдһ¸öDateµÄ×ÓÀà¡£Çåµ¥1 ¾ÍÊÇÕâ¸öÀàµÄÒ»¸ö¼òµ¥ÊµÏÖ¡£ ²»¹ý£¬ÕâÖÖ²âÊÔ·½·¨²¢²»ÐèÒªµ¥Ôª²âÊÔÏÞ¶¨Óqualifier£©£¬Ô­ÒòÈçÏ£º ÔÚÒ»¸öÀàÖнøÐвâÊÔµÄ×îСµ¥ÔªÊÇ·½·¨£¬ÄãÓ¦µ±¶Ôÿ¸ö·½·¨½øÐе¥¶À²âÊÔ£¬ÒÔ׼ȷµØÕÒ³öÄÄЩ·½·¨¹¤×÷Õý³££¬ÄÄЩ·½·¨¹¤×÷²»Õý³£¡£ ¼´Ê¹Ç°ÃæµÄ²âÊÔʧ°Ü£¬Ò²Ó¦µ±¶Ô¸÷¸ö·½·¨½øÐвâÊÔ¡£ÔÚ´ËʵʩÖУ¬Èç¹ûµ¥¸ö²âÊÔʧ°Ü£¬ºóÃæµÄ²âÊÔ½«¸ù±¾²»»áÔËÐС£Õâ¾ÍÒâζ×ÅÄã²»»áÖªµÀ²»Á¼´úÂëÔÚÄãµÄʵʩÖÐËùÕ¼µÄ°Ù·Ö±È¡£ ²âÊÔ´úÂë»á³öÏÖÔÚÉú³ÉµÄÀàÖС£ÕâÔÚÀàµÄ´óС·½Ãæ¿ÉÄܲ»ÊÇʲôÎÊÌ⣬µ«È´¿ÉÄÜ»á³ÉΪ°²È«ÐÔÒòËØÖ®Ò»£ºÀýÈ磬Èç¹ûÄãµÄ²âÊÔǶÈëÁËÊý¾Ý¿âÁ¬½ÓÃÜÂ룬ÄÇôÕâÒ»ÐÅÏ¢½«ºÜÈÝÒ×ÓÃÓÚÒÑ·¢²¼µÄÀàÖС£ ûÓпò¼Ü¿ÉÒÔ×Ô¶¯Æô¶¯ÕâÒ»²âÊÔ£¬Äã±ØÐë±àдһ¸ö½Å±¾À´Æô¶¯Ã¿Ò»¸ö²âÊÔ¡£ ÔÚ±àдһ¸ö±¨¸æÊ±£¬Äã±ØÐë±àд×Ô¼ºµÄʵÏÖ£¬²¢¶¨Ò广Ôò£¬ÒÔ·½±ãµØ±¨¸æ´íÎó¡£ JUnit¿ò¼Ü¾ÍÊÇÉè¼ÆÓÃÀ´½â¾öÕâЩÎÊÌâµÄ¡£ÕâÒ»¿ò¼ÜÖ÷ÒªÊÇËùÓвâÊÔʵÀý£¨³ÆÎª"TestCase"£©µÄÒ»¸ö¸¸À࣬²¢Ìṩ¹¤¾ßÀ´ÔËÐÐËù±àдµÄ²âÊÔ¡¢Éú³É±¨¸æ¼°¶¨Òå²âÊÔ°ü£¨test suite£©¡£ ÈÃÎÒÃÇΪIsoDateÀà±àдһ¸ö²âÊÔ£ºÕâ¸öIsoDateTestÀàÀàËÆÓÚ£º import java.text.ParseException; import junit.Framework.TestCase; /** * Test case for IsoDate. */ public class IsoDateTest extends TestCase { public void testIsoDate() throws Exception { IsoDate epoch=new IsoDate( "1970-01-01 00:00:00 GMT"); assertEquals(0,epoch.getTime()); IsoDate eon=new IsoDate( "2001-09-09 01:46:40 GMT"); assertEquals( 1000000000L*1000,eon.getTime()); } public void testToString() throws ParseException { IsoDate epoch=new IsoDate(0); assertEquals("1970-01-01 00:00:00 GMT",epoch.toString()); IsoDate eon=new IsoDate( 1000000000L*1000); assertEquals("2001-09-09 01:46:40 GMT",eon.toString()); } } ±¾ÀýÖÐҪעÒâµÄÖØµãÊÇÒѾ­±àдÁËÒ»¸öÓÃÓÚ²âÊԵĶÀÁ¢À࣬Òò´Ë¿ÉÒÔ¶ÔÕâЩÎļþ½øÐйýÂË£¬ÒÔ±ÜÃ⽫ÕâÒ»´úÂëǶÈëµ½½«Òª·¢²¼µÄÎĵµÖС£ÁíÍ⣬±¾Àý»¹ÎªÄãÏ£ÍûÔÚÄãµÄ´úÂëÖвâÊÔµÄÿ¸ö·½·¨±àдÁËÒ»¸öרÓòâÊÔ·½·¨£¬Òò´ËÄ㽫ȷÇеØÖªµÀÐèÒª¶ÔÄÄЩ·½·¨½øÐвâÊÔ¡¢ÄÄЩ·½·¨¹¤×÷Õý³£ÒÔ¼°ÄÄЩ·½·¨¹¤×÷²»Õý³£¡£Èç¹ûÔÚ±àдʵʩÎĵµÖ®Ç°ÒѾ­±àдÁ˸òâÊÔ£¬Äã¾Í¿ÉÒÔÀûÓÃËüÀ´ºâÁ¿¹¤×÷µÄ½øÕ¹Çé¿ö¡£ °²×°²¢ÔËÐÐJUnit ÒªÔËÐдËʾÀý²âÊÔʵÀý£¬±ØÐëÊ×ÏÈÏÂÔØ²¢°²×°JUnit¡£JUnitµÄ×îа汾¿ÉÒÔÔÚJUnitµÄÍøÕ¾ www.junit.orgÃâ·ÑÏÂÔØ¡£¸ÃÈí¼þ°üºÜС£¨Ô¼400KB£©£¬µ«ÆäÖаüÀ¨ÁËÔ´´úÂëºÍÎĵµ¡£Òª°²×°´Ë³ÌÐò£¬Ó¦Ê×ÏȶԸÃÈí¼þ°ü½øÐнâѹËõ£¨junitxxx.zip£©¡£Ëü½«´´½¨Ò»¸öĿ¼£¨junitxxx£©£¬ÔÚ´ËĿ¼ÏÂÓÐÎĵµ£¨ÔÚdocĿ¼ÖУ©¡¢¿ò¼ÜµÄÓ¦Óñà³Ì½Ó¿Ú£¨API£©Îĵµ£¨ÔÚjavadocĿ¼ÖУ©¡¢ÔËÐгÌÐòµÄ¿âÎļþ£¨junit.jar£©ÒÔ¼°Ê¾Àý²âÊÔʵÀý£¨ÔÚjunitĿ¼ÖУ©¡£½ØÖÁÎÒ׫д±¾ÎÄʱ£¬JUnitµÄ×îа汾Ϊ3.8.1£¬ÎÒÊÇÔڴ˰汾É϶ÔʾÀý½øÐвâÊԵġ£ ͼ1 ÔËÐÐIsoDate²âÊÔ ÒªÔËÐд˲âÊÔʵÀý£¬½«Ô´Îļþ£¨IsoDate.javaºÍIsoDateTest.java£©¿½±´µ½JunitµÄ°²×°Ä¿Â¼Ï£¬´ò¿ªÖÕ¶Ë£¬½øÈë¸ÃĿ¼£¬È»ºóÊäÈëÒÔÏÂÃüÁîÐУ¨Èç¹ûÄãÕýÔÚʹÓÃUNIX£©£º export CLASSPATH=.:./junit.jar javac *.java »òÕߣ¬Èç¹ûÄãÕýÔÚWindows£¬ÊäÈëÒÔÏÂÃüÁîÐÐ set CLASSPATH=.;junit.jar javac *.java ÕâЩÃüÁîÐжÔCLASSPATH½øÐÐÉèÖã¬Ê¹Æä°üº¬µ±Ç°Ä¿Â¼ÖеÄÀàºÍjunit.jar¿â£¬²¢±àÒëJavaÔ´Îļþ¡£ ÒªÔÚÖÕ¶ËÉÏÔËÐиòâÊÔ£¬ÊäÈëÒÔÏÂÃüÁîÐУº java junit.textui.TestRunner IsoDateTest ´ËÃüÁîÐн«ÔËÐиòâÊÔ£¬²¢ÔÚͼ 1ËùʾµÄ¿ØÖÆÌ¨ÉÏÏÔʾ²âÊÔ½á¹û¡£ ²ÅÔڴ˹¤¾ß¿ÉÒÔÔËÐÐÀàÃû±»´«µÝµ½ÃüÁîÐÐÖеĵ¥¸ö²âÊÔ¡£×¢Ò⣺ֻÓжÔÃüÁîÐеÄ×îºó²âÊÔ²ÅÔÚ¿¼ÂÇÖ®ÄÚ£¬ÒÔǰµÄ²âÊÔ¶¼±»ºöÂÔÁË¡££¨¿´ÆðÀ´ÏñÒ»¸ö³ÌÐò´íÎó£¬Êǰɣ¿£© JUnit»¹ÌṩÁËÀûÓÃAWT£¨³éÏó´°¿Ú¹¤¾ß°ü£©»òSwingÔËÐвâÊÔµÄͼÐνçÃæ¡£ÎªÁËÀûÓôËͼÐνçÃæÔËÐвâÊÔ£¬ÔÚÖÕ¶ËÉÏÊäÈëÒÔÏÂÃüÁîÐУº java junit.awtui.TestRunner IsoDateTest »òÕßʹÓÃSwing½çÃæ£º java junit.swingui.TestRunner IsoDateTest ´ËÃüÁîÐн«ÏÔʾͼ 2ËùʾµÄ½çÃæ¡£ÒªÑ¡ÔñÒ»¸ö²âÊÔ²¢Ê¹ÆäÔËÐУ¬µã»÷´øÓÐÈý¸öµãµÄ°´Å¥¡£Õ⽫ÏÔʾCLASSPATH£¨»¹ÓвâÊÔ°ü£¬µ«ÎÒÃǽ«ÔÚºóÃæÌÖÂÛ£©ÖÐËùÓвâÊÔµÄÁÐ±í¡£ÒªÔËÐвâÊÔ£¬µã»÷"Run"°´Å¥¡£²âÊÔÓ¦µ±ÕýÈ·ÔËÐУ¬²¢ÔÚͼ 2ËùʾµÄ½çÃæÖÐÏÔʾ½á¹û¡£ Ôڴ˽çÃæÖÐÄãÓ¦µ±Ñ¡Öи´Ñ¡¿ò"Reload Classes Every Run"£¬ÒÔ±ãÔËÐÐÆ÷ÔÚÔËÐвâÊÔÀà֮ǰ¶ÔËüÃǽøÐÐÖØÐ¼ÓÔØ¡£ÕâÑù¾Í¿ÉÒÔ·½±ãµØ±à¼­¡¢±àÒë²¢ÔËÐвâÊÔ£¬¶ø²»ÐèҪÿ´Î¶¼Æô¶¯Í¼ÐνçÃæ¡£ Ôڸø´Ñ¡¿òÏÂÃæÊÇÒ»¸ö½ø¶ÈÌõ£¬ÔÚÔËÐнϴóµÄ²âÊÔ°üʱ£¬¸Ã½ø¶ÈÌõ·Ç³£ÓÐÓá£ÔËÐеIJâÊÔ¡¢´íÎóºÍʧ°ÜµÄÊýÁ¿¶¼»áÔÚ½ø¶ÈÌõÏÂÃæÏÔʾ³öÀ´¡£ÔÙÏÂÃæÊÇÒ»¸öʧ°ÜÁбíºÍÒ»¸ö²âÊÔ²ã´Î½á¹¹¡£Ê§°ÜÏûÏ¢ÏÔʾÔڵײ¿¡£Í¨¹ýµã»÷Test Hierarchy£¨²âÊÔ²ã´Î½á¹¹£©Ãæ°å£¬È»ºóÔÙµã»÷´°¿ÚÓÒÉϽǵÄ"Run"°´Å¥£¬¼´¿ÉÔËÐе¥¸ö²âÊÔ·½·¨¡£Çë¼Çס£¬Ê¹ÓÃÃüÁîÐй¤¾ßÊDz»¿ÉÄÜ×öµ½ÕâЩµÄ¡£ ×¢Ò⣬µ±ÔËÐй¤¾ßÀ´Æô¶¯²âÊÔÀàʱ£¬ÕâЩÀà±ØÐë´æÔÚÓÚCLASSPATHÖС£µ«ÊÇÈç¹û²âÊÔÀà´æ´¢ÔÚjarÎļþÖУ¬ÄÇô¼´Ê¹ÕâЩjarÎļþ´æÔÚÓÚCLASSPATHÖУ¬JUnitÒ²²»ÄÜÕÒµ½ÕâЩ²âÊÔÀà¡£ ͼ2 ÓÃÓÚÔËÐвâÊÔµÄSwing½çÃæ Õâ²¢²»ÊÇÒ»ÖÖÆô¶¯²âÊԵķ½±ã·½·¨£¬µ«ÐÒÔ˵ÄÊÇ£¬JUnitÒѾ­±»¼¯³Éµ½ÁËÆäËû¹¤¾ß£¨ÈçAntºÍOracle9i JDeveloper£©ÖУ¬ÒÔ°ïÖúÄ㿪·¢²âÊÔ²¢Ê¹²âÊÔÄܹ»×Ô¶¯ÔËÐС£ ±àдJunit²âÊÔʵÀý ÄãÒѾ­¿´µ½Á˲âÊÔÀàµÄÔ´´úÂë¶ÔIsoDateʵʩ½øÐÐÁËѯÎÊ¡£ÏÖÔÚÈÃÎÒÃÇÀ´Ñо¿ÕâÑùµÄ²âÊÔÎļþµÄʵʩ¡£ ²âÊÔʵÀýÓÉjunit.frameword.TestCase¼Ì³Ð¶øÀ´ÊÇΪÁËÀûÓÃJUnit¿ò¼ÜµÄÓŵ㡣Õâ¸öÀàµÄÃû×Ö¾ÍÊÇÔÚ±»²âÊÔÀàµÄÃû×ÖÉϸ½¼Ó"Test"¡£ÒòΪÄãÕýÔÚ²âÊÔÒ»¸öÃûΪIsoDateµÄÀ࣬ËùÒÔÆä²âÊÔÀàµÄÃû×Ö¾ÍÊÇIsoDateTest¡£ÎªÁË·ÃÎʳý˽Óз½·¨Ö®ÍâµÄËùÓз½·¨£¬Õâ¸öÀàͨ³£Óë±»²âÀàÔÚͬһ¸ö°üÖС£ ×¢Ò⣬Äã±ØÐëΪÄãÏ£Íû²âÊÔµÄÔÚÀàÖж¨ÒåµÄÿ¸ö·½·¨¶¼±àдһ¸ö·½·¨¡£ÄãÒª²âÊÔ¹¹ÔìÆ÷»òʹÓÃÁËISOÈÕÆÚ¸ñʽµÄ·½·¨£¬Òò´ËÄ㽫ÐèҪΪÒÔISO¸ñʽµÄ×Ö·û´®×÷Ϊ²ÎÊýµÄ¹¹ÔìÆ÷ºÍtoString()·½·¨±àдһ¸ö²âÊÔ·½·¨¡£ÆäÃüÃû·½Ê½Óë²âÊÔÀàµÄÃüÃû·½Ê½ÀàËÆ£ºÔÚ±»²âÊÔ·½·¨£¨»ò¹¹ÔìÆ÷£©Ç°Ã渽¼Ó"test"¡£ ²âÊÔ·½·¨µÄÖ÷Ìåͨ¹ýÑéÖ¤assertion£¨¶ÏÑÔ£©¶Ô±»²â·½·¨½øÐÐѯÎÊ¡£ÀýÈ磬ÔÚtoString()ʵʩµÄ²âÊÔ·½·¨ÖУ¬ÄãÏ£ÍûÈ·Èϸ÷½·¨ÒѾ­¶Ôʱ¼äµÄÉ趨½øÐÐÁ˺ܺõÄ˵Ã÷£¨¶ÔÓÚUNIXϵͳÀ´Ëµ£¬×î³õÎÊÊÀµÄʱ¼äΪ1970Äê1ÔÂ1ÈÕµÄÎçÒ¹£©¡£ÒªÊµÊ©assertion£¬Äã¿ÉÒÔʹÓÃJunit¿ò¼ÜÌṩµÄassertion·½·¨¡£ÕâЩ·½·¨Ôڸÿò¼ÜµÄjunit.framework.AssertÀàÖб»ÊµÊ©£¬²¢ÇÒ¿ÉÒÔÔÚÄãµÄ²âÊÔÖб»·ÃÎÊ£¬ÕâÊÇÒòΪAssertÊÇTestCaseµÄ¸¸Àà¡£ÕâЩ·½·¨¿ÉÓëJavaÖеĹؼü×Öassert£¨ÊÇÔÚJ2EE 1.4ÖÐгöÏֵģ©Ïà±È¡£Ò»Ð©assertion·½·¨¿ÉÒÔ¼ì²éԭʼÀàÐÍ£¨Èç²¼¶ûÐÍ¡¢ÕûÐ͵ȣ©Ö®¼ä»ò¶ÔÏóÖ®¼äÊÇ·ñÏàµÈ£¨ÀûÓÃequals()·½·¨¼ì²éÁ½¸ö¶ÔÏóÊÇ·ñÏàµÈ£©¡£ÆäËûassertion·½·¨¼ì²éÁ½¸ö¶ÔÏóÊÇ·ñÏàͬ¡¢Ò»¸ö¶ÔÏóÊÇ·ñΪ"¿Õ"»ò"·Ç¿Õ"£¬ÒÔ¼°Ò»¸ö²¼¶ûÖµ£¨Í¨³£ÓÉÒ»¸ö±í´ïʽÉú³É£©ÊÇ"Õæ"»¹ÊÇ"¼Ù"¡£ÔÚ±í 1ÖжÔÕâЩ·½·¨½øÐÐÁË×ܽᡣ ¶ÔÓÚÄÇЩ²ÉÓø¡µãÀàÐÍ»òË«¾«¶ÈÀàÐͲÎÊýµÄassertion£¬´æÔÚÒ»¸öµÚÈýÖÖ·½·¨£¬¼´²ÉÓÃÒ»¸ödeltaÖµ×÷Ϊ²ÎÊý½øÐбȽϡ£ÁíÍ⻹ҪעÒ⣬assertEquals()ºÍassertSame()·½·¨Ò»°ã²»»á²úÉúÏàͬµÄ½á¹û¡££¨Á½¸ö¾ßÓÐÏàֵͬµÄ×Ö·û´®¿ÉÒÔ²»Ïàͬ£¬ÒòΪËüÃÇÊÇÁ½¸ö¾ßÓв»Í¬ÄÚ´æµØÖ·µÄ²»Í¬¶ÔÏó¡££©Òò´Ë£¬assertEquals()½«»áÑéÖ¤assertionµÄÓÐЧÐÔ£¬¶øassertSame()Ôò²»»á¡£×¢Ò⣬¶ÔÓÚ±í 1 ÖеÄÿ¸öassertion·½·¨£¬Ä㻹ÓÐÒ»ÖÖÑ¡Ôñ£¬¾ÍÊÇÒýÈëÁíÒ»¸ö²ÎÊý£¬Èç¹ûassertionʧ°Ü£¬¸Ã²ÎÊý¾Í»á¸ø³öÒ»Ìõ½âÊÍÐÔÏûÏ¢¡£ÀýÈ磬assertEquals£¨int ÆÚÍûÖµ, int ʵ¼ÊÖµ£©¾Í¿ÉÒÔÓëÒ»¸öÖîÈçassertEquals£¨×Ö·û´®ÏûÏ¢£¬intÆÚÍûÖµ£¬intʵ¼ÊÖµ£©µÄÏûÏ¢Ò»ÆðʹÓᣠµ±Ò»¸öassertionʧ°Üʱ£¬¸Ãassertion·½·¨»áÅ׳öÒ»¸öAssertFailedError»òComparisonFailure¡£AssertionFailedErrorÓÉjava.lang.Error¼Ì³Ð¶øÀ´£¬Òò´ËÄã²»±ØÔÚ²âÊÔ·½·¨µÄthrowsÓï¾äÖÐ¶ÔÆä½øÐÐÉùÃ÷¡£¶øComparisonFailureÓÉAssertionFailedError¼Ì³Ð¶øÀ´£¬Òò´ËÄãÒ²²»±Ø¶ÔÆä½øÐÐÉùÃ÷¡£ÒòΪµ±Ò»¸öassertionʧ°Üʱ»áÔÚ²âÊÔ·½·¨ÖÐÅ׳öÒ»¸ö´íÎó£¬ËùÒÔºóÃæµÄassertion½«²»»á¼ÌÐøÔËÐС£¿ò¼Ü²¶×½µ½ÕâЩ´íÎó²¢È϶¨¸Ã²âÊÔÒѾ­Ê§°Üºó£¬¾Í»á´òÓ¡³öÒ»Ìõ˵Ã÷´íÎóµÄÏûÏ¢¡£Õâ¸öÏûÏ¢ÓÉassertionÉú³É£¬²¢ÇÒ±»´«µÝµ½assertion·½·¨£¨Èç¹ûÓеϰ£©¡£ ÏÖÔÚ½«ÏÂÃæÒ»ÐÐÓï¾äÌí¼Óµ½testIsoDate()·½·¨µÄĩβ£º assertEquals("This is a test",1,2); ÏÖÔÚ±àÒë²¢ÔËÐвâÊÔ£º $ javac *.java $ java junit.textui.TestRunner IsoDateTest .F. Time: 0,348 There was 1 failure: 1) testIsoDate(IsoDateTest)junit.framework .AssertionFailedError: This is a test expected:

ÎÄÕÂÕûÀí£ºÎ÷²¿ÊýÂë--רҵÌṩÓòÃû×¢²á¡¢ÐéÄâÖ÷»ú·þÎñ
http://www.west263.com
ÒÔÉÏÐÅÏ¢ÓëÎÄÕÂÕýÎÄÊDz»¿É·Ö¸îµÄÒ»²¿·Ö,Èç¹ûÄúÒª×ªÔØ±¾ÎÄÕÂ,Çë±£ÁôÒÔÉÏÐÅÏ¢£¬Ð»Ð»!