±à¼ÍƼö: |
±¾ÎÄÀ´×Ôcsdn£¬±¾ÎĽéÉÜÁËÔÚÒ»°ãjavaÏîÄ¿ÒÔ¼°»ùÓÚspringµÄjavaÏîÄ¿ÖÐÔõôȥ×öµ¥Ôª²âÊÔµÄÏà¹ØÄÚÈÝ¡£ |
|
ÔÚÎÒÃDZàдÏîÄ¿¹ý³ÌÖУ¬¾³£»áÐèÒª½øÐдúÂë²âÊÔ£¬ÄÇÊDz»ÊÇÔÚ±àдһ¸ömain·½·¨Ö®ºó£¬È»ºó±àд¸÷ÖֵIJâÊÔ´úÂë¡£ÕâÑù×ö£¬ÏÔÈ»ÊDz»ºÏÊʵÄÒ²ÊǺܲ»×¨ÒµµÄ¡£ÄÇÔõô°ìÄØ£¿½ñÌìÎÒÃÇÀ´ÁÄÏÂjunit£¨µ¥Ôª²âÊÔ£©¡£
ΪÁ˺óÆÚ²âÊÔ»ùÓÚspringµÄµ¥Ôª²âÊÔ£¬ÎÒÃÇÖ±½Óн¨spring¹¤³Ì¡£

н¨Ö®ºó£¬ÎÒÃÇÏȽ²Ò»°ãÔÚjavaÏîÄ¿ÖÐÔõôȥ×öµ¥Ôª²âÊÔ¡£
ÎÒÃÇÏȶ¨ÒåÒ»¸öʵÌåUser

ÔÚservice°üÖÐн¨Ò»¸ö½Ó¿Ú£¬ÔÚ½Ó¿ÚÖж¨ÒåÒ»¸ö·½·¨£¬·½·¨µÄ·µ»ØÖµ¾ÍÊÇ·µ»ØÒ»¸öÓû§¶ÔÏó

ÓÐÓÐÁ˽ӿڣ¬¶ÔÓ¦ÕâÎÒÃÇÈ¥±àдËüµÄʵÏÖÀà

ÕâÀïÃæ¾ÍÊÇÒ»¸ö¼òµ¥µÄÒµÎñÂß¼£¬Èç¹ûidΪ1Ôò·µ»ØÒ»¸öUser¶ÔÏ󣬷ñÔò·µ»ØÒ»¸ö¿ÕÖµ¡£ÔÚÕæÊµµÄÏîÄ¿ÖУ¬Õâ±ß¿Ï¶¨²»ÊÇÕâô¼òµ¥µÄÒµÎñ£¬Ëü¶ÔÓ¦×ŵĿ϶¨Êǵ÷Óó־òãÏà¹ØµÄ·½·¨£¬½øÐÐÒµÎñÂß¼µÄʵÏÖ¡£ÎÒÃÇÕâ±ßÖ»ÊÇΪÁ˽²½âµ¥Ôª²âÊÔ£¬ËùÒÔÀý×ÓÏà¶Ô¼òµ¥¡£
serviceʵÏÖÒѾдºÃ£¬ÄÇÎÒÃÇϲ½×öµÄÊÂÇé¾ÍÊǶÔËü½øÐе¥Ôª²âÊÔ¡£
Ê×ÏÈ£¬Ð½¨²âÊÔÀà

ÎÒÃÇÕâ±ßн¨¸úsrcÒ»ÑùÀàÐ͵ÄÔ´Îļþ£¬Ãû×ÖȡΪtest¡£ÎªÊ²Ã´Õâô×ö£¿Ò²¾ÍÊÇÕâÑù×öµÄºÃ´¦ÊÇʲô£¿1.²ã´ÎÇåÎú£¬ÏîÄ¿´úÂë¸ú²âÊÔ´úÂë·Ö¿ª£¬ÌõÄ¿ºÜÇåÎú¡£2.·½±ã¹ÜÀí¡£

н¨ºÃtestÔ´°üÖ®ºó£¬ÎÒÃÇÔÙÀ´Ð½¨²âÊÔÀà¡£Ôõôн¨ÄØ£¿Êó±êÓÒ»÷ÄãÒª²âÊÔµÄÀ࣬µã»÷new°´Å¥£¬ÔÙµã»÷ÓÒ²àµÄother,ÔÚËÑË÷¿òÖÐÊäÈëjunit¡£Ñ¡ÔñJunit
Test Case,µã»÷next,³öÏÖÈçϽçÃæ

µã»÷Browse°´Å¥Ñ¡Ôñ£¬ÎÒÃÇн¨µÄtestԴĿ¼£¬¹´Ñ¡junit4

µã»÷next£¬Ëü»á×Ô¶¯É¨ÃèÄã²âÊÔÀàÖÐËùÓеķ½·¨¡£

Ñ¡ÖÐÄãÏë²âÊԵķ½·¨£¬µã»÷finish¡£

ÓÉ´ËÎÒÃǵĵ¥Ôª²âÊÔн¨¾Í»ù±¾Íê³ÉÁË¡£
×¢Ò⣺ÎÒÃÇÕâ±ßÒýÓõÄÊÇjunit4£¬ÄÇÓÐЩС»ï°é¼ÓµÄjunit3¡£ÄÇËûÃǵÄÇø±ðÊÇÊ²Ã´ÄØ£¿junit3ÐèÒª¼Ì³ÐTestCaseÕâ¸öÀ࣬¶øÎÒÃÇjunit4²»ÐèÒª¡£

import static org.junit.Assert.*; ¶ÏÑÔ£¨²»Ïê½â£¬¿É°Ù¶È£©
»ù±¾×¢½â
@Test£º½«Ò»¸öÆÕͨµÄ·½·¨ÐÞÊγÉΪһ¸ö²âÊÔ·½·¨£¬¿ÉÒÔ½ÓÊÜÒì³£
@Test(expected=XX.class)? ½ÓÊÜÒì³£
@Test(timeout=ºÁÃë)?? ¶¨Ê±½áÊø
@BeforClass:Ëü»áÔÚËùÓеķ½·¨ÔËÐÐǰ±»Ö´ÐУ¬Ö»Ö´ÐÐÒ»´Î£¬staticÐÞÊÎ,ÓÃÀ´¼ÓÔØÅäÖÃÎļþ
@AfterClass:Ëü»áÔÚËùÓеķ½·¨ÔËÐнáÊøºó±»Ö´ÐУ¬staticÐÞÊΣ¬ÓÃÀ´ÊÍ·Å×ÊÔ´
@Before£º»áÔÚÿһ¸ö²âÊÔ·½·¨±»ÔËÐÐǰִÐÐÒ»´Î
@After:»áÔÚÿһ¸ö²âÊÔ·½·¨ÔËÐкó±»Ö´ÐÐ
@Ignore£ºËùÐÞÊεķ½·¨»á±»²âÊÔÔËÐÐÆ÷ºöÂÔ
@RunWith£º¿ÉÒÔ¸ü¸Ä²âÊÔÔËÐÐÆ÷ Ö»ÒªÄãµÄ²âÊÔÆ÷¼Ì³Ðorg.junit.runner.Runner
ÑÝʾÈçÏ£º

ÓÒ»÷ÔËÐÐÑ¡ÔñJunit Test
ÏÔʾ½á¹û£º

ÄÇÏÂÃæÎÒÃÇÀ´½áºÏ°¸ÀýÀ´²âÊÔÏÂÎÒÃǵļòµ¥Servcie

Ë«»÷ÎÒÃÇÒª²âÊԵķ½·¨Ãû£¬ÓÒ»÷ÔËÐÐJunit Test£¬Ê×ÏȲâÊÔÃæ°å²»±¨´í¡£ÂÌÉ«´ú±í³ÌÐòÎÞ´í¡£ºìÉ«´ú±í³ÌÐò³ö´í£¬¸ù¾Ý³ö´íÐÅÏ¢£¬²éÕÒ´íÎóËùÔڵأ¬È»ºó½øÐÐÐ޸ġ£
×ó±ßµÄRuns£º1/1 ±íʾÄãÔËÐÐÁ˼¸¸öTest²âÊÔ·½·¨¡£ Errors£º0 ±íʾÓжàÉÙ¸ö´íÎó¡£Failures:0
±íʾʹÓöÏÑÔµÄʱºò£¬ÎªÆÚÍûÎÒ´ïµ½µÄÖµµÄ·½·¨Óм¸¸ö¡£

¿ØÖÆÌ¨´òÓ¡½á¹û

ÖÁ´ËÎÒÃÇÆÕͨµÄµ¥Ôª²âÊÔ»ù±¾Ó÷¨ÒѾ½²Íê¡£
ÄÇ»ùÓÚspringµÄµ¥Ôª²âÊÔÔõÃ´ÅªÄØ£¿£¨Õâ±ß½²½âÊÇÕë¶ÔÓÐspring»ù´¡µÄÈËȺ£©
Ê×ÏȼÓÔØspringµÄjar°ü
spring-test-4.0.4.RELEASE£¨×¢Òâ°æ±¾£©
commons-logging-1.2.jar
ÔÚapplicationContext.xmlÖУ¬É¨ÃèserviceʵÏÖ°ü
<context:component-scan base-package="service.impl"></context:component-scan>
ÔÚUserServiceImplʵÏÖÀàÉÏʹÓÃspringmvc ×¢½â@Service("userService")
±àдspringµ¥Ôª²âÊÔ£¬µã»÷ÔËÐС£

@RunWith(SpringJUnit4ClassRunner.class)? ÉÏÃæÒÑ×ö½éÉÜ¡£
@ContextConfiguration(locations={"classpath:applicationContext.xml"})¼ÓÔØÅäÖÃÎļþ£¬locations²ÎÊýÊÇÒ»¸öÊý×飬¿ÉÒÔ¼ÓÔØ¶à¸ö£¬ÅäÖÃÎļþ¡£
@Resource ×Ô¶¯×¢ÈëIocÈÝÆ÷µÄ¶ÔÓ¦µÄbean¡£
@Test ÎÒÃǵIJâÊÔ·½·¨¡£
junitµÄÌ×¼þ²âÊÔ£º
µ±ÎÒÃÇн¨ÁË´óÁ¿µÄ²âÊÔÀ࣬ÎÒÃDz»¿ÉÄܵ±³ÌÐò³öÏÖÎʵÄʱºò£¬ÔÙÒ»¸öÒ»¸öµÄ´ò¿ªÀàÈ»ºóµã»÷Ò»¸öÒ»¸öµÄ·½·¨°É¡£ÄÇÕâ±ß¾Í¿ÉÒÔÓõ½junitµÄÌ×¼þ²âÊÔ¡£
ÔÚÎÒÃǵIJâÊÔ°üÖУ¬µã»÷ÓÒ»÷н¨Junit Test Suit£¬Ñ¡ÔñÎÒÃÇËùÓеIJâÊÔÀ࣬µã»÷finish

µã»÷ÔËÐм´¿É£¬¾Í´ïµ½ÎÒÃÇÒ»´Î²âÊÔËùÓвâÊÔÀàµÄÄ¿µÄÁË¡£
µ±È»£¬junit »¹ÓкܶàÇ¿´óµÄ¹¦ÄÜ£¬±ÈÈç¶à²ÎÊý²âÊԵȵȡ£¡£¡£Ï£Íû¸÷λС»ï°éÄܹ»Óä¿ìµÄÍæË££¬´Ë´Î½²½âÖ»ÊÇ×î»ù´¡µÄÓ÷¨¡£´óÉñÈÆ¹ý¡£¡£¡£
µ«ÊÇ£¬ÎÒÃÇjunitÒ²²»ÊÇÍòÄܵģ¬Ê¹ÓÃjunit½øÐе¥Ôª²âÊÔ£¬Ö»ÊÇÖ¤Ã÷ÁËÄãµÄ³ÌÐòÎÞ´í£¬²¢Ã»ÓÐÖ¤Ã÷ÄãµÄ³ÌÐò¾ÍÊǶԵġ£
|