ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>九九热播视频在线精品6,电影在线一区,国产精品久久国产精品http://www.aygfsteel.com/JPeanut/category/10210.htmlæ¬è¿è‡?http://www.17m.net.cn/zh-cnTue, 27 Feb 2007 12:26:20 GMTTue, 27 Feb 2007 12:26:20 GMT60åŸÞZºŽj2eeå•å…ƒ‹¹‹è¯•框架介ç»ä¹‹ä¸‰åQJMS甉|–‡æ’äšghttp://www.aygfsteel.com/JPeanut/archive/2006/04/20/42215.html陈市æ˜?/dc:creator>陈市æ˜?/author>Thu, 20 Apr 2006 11:45:00 GMThttp://www.aygfsteel.com/JPeanut/archive/2006/04/20/42215.htmlhttp://www.aygfsteel.com/JPeanut/comments/42215.htmlhttp://www.aygfsteel.com/JPeanut/archive/2006/04/20/42215.html#Feedback0http://www.aygfsteel.com/JPeanut/comments/commentRss/42215.htmlhttp://www.aygfsteel.com/JPeanut/services/trackbacks/42215.html

作者:陈市æ˜?/span>/Slipper Feng 摘自åQšhttp://www.aygfsteel.com/JPeanut

       现在­‘Šæ¥­‘Šå¤šçš„ç³»¾lŸä¸æ˜¯ç‹¬ç«‹è¿è¡Œçš„åQŒä¼šå’Œå…¶ä»–ç³»¾lŸè¿›è¡Œäº¤äº’。交互的方å¼åˆå¾ˆå¤šï¼Œä»Žä¼ ¾lŸçš„™åµé¢ post 到现在的 jms åQ?/span> ws ½{‰ã€‚这个就¾l™æµ‹è¯•å¸¦æ¥æ¯”较大的难度,特别是互盔R€šè®¯çš„ç³»¾lŸä¸å±žäºŽåŒä¸€ä¸ªå…¬å¸ã€‚测试äh员很隑֜¨ä¸€ä¸ªåŠžå…¬å®¤é‡Œé¢˜q›è¡Œå¯šw¡¹ç›®å®Œæ•´çš„‹¹‹è¯•åQŒæ›´ä½•况å¯ÒŽ–¹¾pÈ»Ÿæœ‰çš„æ—¶å€™æ˜¯æ²¡æœ‰‹¹‹è¯•ž®ç»„çš„ï¼Œåªæœ‰å¼€å‘äh员兼èŒåš‹¹‹è¯•ã€?/span>

       æˆ‘è¿™é‡Œä¸»è¦æ˜¯è§£å†³ jms 通讯的å•元测试。在我们公å¸åQ?/span> jms 的传输的数æ®å¯†æ–‡ä¼ è¾“åQˆå› ä¸ºåކå²åŽŸå› è¢«¿UîCؓ甉|–‡åQ‰ã€‚很多情况下我们都是通过 mock æ¥æ¨¡æ‹Ÿé˜Ÿåˆ—和甉|–‡çš„ï¼Œæˆ‘è¿™é‡Œæ˜¯é€šè¿‡é‡æ–°å†?/span> jms çš?/span> mq å’?/span> jms çš?/span> message æ¥å®žçŽ°çš„åQŒæ‰€æœ‰çš„æ•°æ®ä¸æ˜¯é€šè¿‡æ¨¡æ‹Ÿçš„东西,而是˜q›å…¥çœŸå®žçš„队列中ã€?/span>

   è®¾è®¡æ€æƒ³åQ?/span>

模拟 MQ å’?/span> JMS 的工作原ç†ï¼Œ¾~–写一个本地的 MQ 和消æ¯å‘é€æŽ¥æ”¶ç³»¾l?/span>

在内存中直接ž®†æ›¿æ?/span> aop 容器中的 MQ ã€?/span> JMS 替æ¢ä¸ºæœ¬åœ°çš„ MQ 和我们的消æ¯å¤„ç†

       具体设计åQ?/span>

       1 åQ‰ç”µæ–‡æŽ¥æ”?/span>

新电文系¾lŸæŽ¥æ”¶ç”µæ–‡åŽŸç?jpg

图表 1 新电文系¾lŸæŽ¥æ”¶ç”µæ–‡åŽŸç?/span>

新电文接收系¾lŸï¼šå…¶ä»–¾pÈ»Ÿå¦‚æžœè¦å‘é€ä¿¡æ¯ç»™æˆ‘们的系¾lŸï¼Œæ˜¯å…ˆè®²ç”µæ–‡å‘é€ç»™æˆ‘们çš?/span> uecp òq›_°åQŒç„¶å?/span> uecp 讲电文存攑ր?/span> MQ 中,我们™å¹ç›®å¯¹ä»Ž MQ ä¸­è¯»å‡ºç”µæ–‡ï¼Œç„¶åŽæ Òޮ酿®é…置调用å“应çš?/span> Service åQŒæœ€åŽï¼Œä¸€èˆ¬æƒ…况, service éƒ½æ˜¯æ¥æ“作数æ®åº“˜q›è¡Œå¢žåˆ æ”¹åŠ¨ä½œã€?/span>

新电文åã^å°çš„几大特点åQ?/span>

Ø         甉|–‡æ˜¯å¼‚步传è¾?/span>

Ø         甉|–‡çš„æ˜¯æœ‰æ—¶åºçš„

Ø         一般æ¥è¯ß_¼Œä¸€ä¸ªåº”ç”¨åªæœ‰ä¸€ä¸ªç”µæ–‡æŽ¥æ”‰™˜Ÿåˆ?/span>


新电文接收的å•å…ƒ‹¹‹è¯•原ç†.jpg

图表 2 新电文接收的å•å…ƒ‹¹‹è¯•原ç†

针对新电文系¾lŸæŽ¥æ”¶çš„原ç†å’Œç‰¹ç‚¹ï¼Œå¯ä»¥åˆ†æžå‡ºï¼š

Ø         甉|–‡å¿…é¡»æ”ÒŽˆæœ¬åœ°çš„çš„åQŒå•元测试åšä¸åˆ°å¼‚步甉|–‡çš„自动化回归

Ø         åº”ç”¨åªæœ‰ä¸€ä¸ªé˜Ÿåˆ—,我们åªéœ€è¦å°è£…下 ArrayList ž®±å¯ä»¥ä½œä¸ºé˜Ÿåˆ—了

Ø         ä¸ÞZº†ä¿®æ”¹æœ€ž®è¯åQ?/span> IBMMQProxy 的实现改æˆ?/span> JunitMessagingServerProxy åQŒç„¶åŽï¼Œå†é€šè¿‡ ioc 注入 junit çš?/span> MQ å’?/span> Junit çš?/span> JMS

Ø         因䨓åœ?/span> uecp 中å¯ä»¥çœ‹åˆ°ç”µæ–‡çš„æ˜Žæ–‡çš„,所以, Test***Action å‘é€ç”µæ–‡ä¹Ÿæ˜¯æ˜Žç ï¼Œå¯ä»¥ç›´æŽ¥æŠ?/span> uecp 中的甉|–‡ copy 到程åºä¸­


  2)甉|–‡å‘é€?br />新电文系¾lŸå‘é€ç”µæ–‡åŽŸç?jpg

图表3新电文系¾lŸå‘é€ç”µæ–‡åŽŸç?/span>

新电文å‘é€ç³»¾lŸï¼šæˆ‘们的系¾lŸå¦‚果对其他多个¾pÈ»Ÿ˜q›è¡Œäº¤äº’åQŒä¼šå¯¹å‡ ä¸ªé˜Ÿåˆ—分别å‘逿•°æ®ï¼Œuecpè¯Õd–˜q™äº›é˜Ÿåˆ—ž®†æ•°æ®å‡†¼‹®å‘é€åˆ°å„个¾pÈ»Ÿä¸­ã€?br />
新电文å‘é€çš„å•å…ƒ‹¹‹è¯•原ç†.jpg

图表4新电文å‘é€çš„å•å…ƒ‹¹‹è¯•原ç†

新电文å‘é€çš„å•å…ƒ‹¹‹è¯•åŽŸç†æ¯”较½Ž€å•,ž®±æ˜¯Test×××Action调用会引起å‘é€ç”µæ–‡çš„代ç åQŒç­‰˜q行完,ž®±åŽ»æŸ¥çœ‹é˜Ÿåˆ—é‡Œé¢æ˜¯ä¸æ˜¯æˆ‘们预期å‘é€çš„甉|–‡ã€?br />
通过˜q™æ ·çš„æ–¹å¼æ¥˜q›è¡Œå¯¹JMS的电文系¾lŸè¿›è¡Œå•元测试,å¯ä»¥åšåˆ°è‡ªåŠ¨åŒ–çš„å›žå½’‹¹‹è¯•。因为实现电文的‹¹‹è¯•功能是按照框架的æ’äšgåè®®¾~–写åQŒåœ¨æˆ‘们的系¾lŸä¸­åªè¦™å¹ç›®TC注册一下电文æ’ä»¶å°±å¯ä»¥ä½¿ç”¨å…¶åŠŸèƒ½ï¼ŒåŽŸæ¥å·²æœ‰çš„æµ‹è¯•脚本无需修改。åŽé¢è¿˜ä¼šå޾l­å¼€å‘关于socketå’Œws的传输方å¼çš„‹¹‹è¯•æ’äšgã€?br />


]]>
åŸÞZºŽj2eeå•å…ƒ‹¹‹è¯•框架介ç»ä¹‹äºŒåQæµ‹è¯•æ¡†æž¶è®¾è®¡æ€æƒ³http://www.aygfsteel.com/JPeanut/archive/2006/04/20/42043.html陈市æ˜?/dc:creator>陈市æ˜?/author>Wed, 19 Apr 2006 16:45:00 GMThttp://www.aygfsteel.com/JPeanut/archive/2006/04/20/42043.htmlhttp://www.aygfsteel.com/JPeanut/comments/42043.htmlhttp://www.aygfsteel.com/JPeanut/archive/2006/04/20/42043.html#Feedback0http://www.aygfsteel.com/JPeanut/comments/commentRss/42043.htmlhttp://www.aygfsteel.com/JPeanut/services/trackbacks/42043.html

作者:陈市æ˜?/span>/Slipper Feng 摘自åQšhttp://www.aygfsteel.com/JPeanut

Junit ç›®å‰æ˜?/span> java ¿U最为æµè¡Œçš„å•å…ƒ‹¹‹è¯•的框æžÓž¼Œå¼€å‘äh员是¾~–写设计模å¼çš„三大牛äºÞZ¹‹ä¸€ã€?/span> junit ç‰|´»çš„ä‹Éç”¨äº†å¤šç§æ¨¡å¼åQŒä‹É得扩展éžå¸æ€¹‹å®ÒŽ˜“。他的扩展是所有å•元测试框架是最多的åQŒä½†æ˜¯å¾ˆå¤šæ‰©å±•都是直接ç‘ô承自 TestCase åQŒè¿™ä¸ªå°±å¯ÆD‡´ç”¨äº†˜q™ä¸ªæ‰©å±•ž®±æ²¡æ³•ä‹É用其他的扩展了,比如åQŒç”¨äº?/span> dbunit ž®×ƒ¸èƒ½å†ç”?/span> easy struts 了(除éžåQŒæˆ‘们对扩展˜q›è¡Œé‡å†™åQ‰ã€?/span>

  ä¸ÞZº†è§£å†³˜q™ä¸ªé—®é¢˜åQŒæˆ‘åœ?/span>Junit之上˜q˜å°è£…了一å±?/span>TestFrameåQŒä‹Éå¾?/span>junitèƒ½å¤Ÿå¾ˆå®¹æ˜“çš„åŒæ—¶ä½¿ç”¨å¤šä¸ªæ‰©å±•ã€‚æˆ‘ä»¬è¿™é‡Œçš„è®¾è®¡æ€æƒ³æ˜¯ï¼š

1åQ?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">  æŠŠæ‰©å±•å†™æˆæ’ä»¶å¼åQŒæˆ‘åªè¦é€šè¿‡å†™ä¸€ä¸?/span> plugin 接å£è®©ä»–集战q›æˆ‘们的框架ä¸?/span>

2åQ?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">  åŽæœŸå¯ÒŽž¶æž„的功能扩展完全å¯ä»¥é€šè¿‡æ’äšg实现。目å‰ï¼Œå·²ç»å†™äº† dbunit åQ?/span> struts-easy,imon fk åQ?/span> JMS 甉|–‡çš?/span> plugin 。通过æ’äšg的方å¼ï¼Œæˆ‘们ž®±å¯ä»¥å¾ˆå®ÒŽ˜“的解å†?/span> junit 的硬伤:‹¹‹è¯•数殼‹¬ä»£ç ã€?/span>

3åQ?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">  æ’äšg的添加,无需修改架构åŠå…¶åŽŸæœ‰çš„æµ‹è¯•è„šæœ¬ï¼Œåªéœ€è¦åœ¨â€œé¡¹ç›®çš„ TC â€ä¸­åœ¨æ³¨å†Œä¸­å¿ƒå¯¹æ’äšg注册ž®±å¯ä»¥èŽ·å¾—æ’件的所有的功能

4åQ?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">  架构是é¢å‘对™å¹ç›®çš„,所有ä¸åŒæž¶æž„çš„™å¹ç›®å¯ä»¥ä½¿ç”¨åŒä¸€å¥—底层架构,ä¸ä¸€æ ïLš„åªæ˜¯â€œé¡¹ç›?/span> Tc â€?/span>

5åQ?span style="font-family: "Times New Roman"; font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-size-adjust: none; font-stretch: normal;">  Test Frame Work ã€æ‰€æœ‰çš„ plugin 和项ç›?/span> TC 都å¯ä»¥å„自独立打æˆ?/span> jar åQŒè¿™æ äh¡†æž¶å¯ä»¥å¾ˆæ–¹ä¾¿çš„进行局部凾U?/span>

 

åQˆå‘µå‘µï¼Œæœ‰äº†ç”‰|–‡æ’äšgåŽï¼Œž®±å¾ˆå®ÒŽ˜“的对我们的项目进行自动化的å•元测试。在‹Æ¡ä¹‹å‰ï¼Œæˆ‘们一直没有对甉|–‡˜q›è¡Œæœ‰æ•ˆçš„自动化的å•元测试, mock 技术å¯ä»¥å®žçŽŽÍ¼Œä½†æ˜¯åQŒå¯¹äºŽéœ€æ±‚å˜åŒ?/span> mock 没有很好的解军_Šžæ³•ï¼‰

å•å…ƒ‹¹‹è¯•æ¡†æž¶çš„è®¾è®¡æ€æƒ³.jpg



]]>
åŸÞZºŽj2eeå•å…ƒ‹¹‹è¯•框架介ç»ä¹‹ä¸€åQ调试无需å¯åЍ䏭间ä»?/title><link>http://www.aygfsteel.com/JPeanut/archive/2006/04/18/41768.html</link><dc:creator>陈市æ˜?/dc:creator><author>陈市æ˜?/author><pubDate>Tue, 18 Apr 2006 15:04:00 GMT</pubDate><guid>http://www.aygfsteel.com/JPeanut/archive/2006/04/18/41768.html</guid><wfw:comment>http://www.aygfsteel.com/JPeanut/comments/41768.html</wfw:comment><comments>http://www.aygfsteel.com/JPeanut/archive/2006/04/18/41768.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.aygfsteel.com/JPeanut/comments/commentRss/41768.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/JPeanut/services/trackbacks/41768.html</trackback:ping><description><![CDATA[ <p class="MsoNormal" style="text-indent: 21pt;"> <span lang="EN-US"> <br /> </span> </p> <p class="MsoNormal" style="text-indent: 21pt;" align="right"> </p> <p class="MsoNormal" style="text-indent: 21.75pt;" align="right"> </p> <p class="MsoNormal" style="text-indent: 21.75pt;" align="right"> </p> <p class="MsoNormal" style="text-indent: 21.75pt;" align="right"> <font size="2">作者:<span style="text-decoration: underline;">陈市æ˜?/span></font>/Slipper Feng <font size="2"><span style="font-family: 宋体;"> 摘自åQšhttp://www.aygfsteel.com/JPeanut</span></font></p> <p class="MsoNormal" style="text-indent: 21.75pt;" align="right"> <font size="2"> <span style="font-family: 宋体;"> </span> </font> </p> <p class="MsoNormal" style="text-indent: 21.75pt;" align="right"> <font size="2"> <span style="font-family: 宋体;"> </span> </font> </p> <p class="MsoNormal" style="text-indent: 21pt;" align="right"> </p> <p class="MsoNormal" style="text-indent: 21pt;"> <span lang="EN-US">J2EE</span> <span style="font-family: 宋体;">是目å‰å…¬è®¤çš„æ¯”较慢的一¿Uå¼€å‘,相比</span> <span lang="EN-US">.net</span> <span style="font-family: 宋体;">åQ?/span> <span lang="EN-US">php</span> <span style="font-family: 宋体;">åQ?/span> <span lang="EN-US">asp</span> <span style="font-family: 宋体;">½{‰è€Œè¨€ã€‚其实,</span> <span lang="EN-US">j2ee</span> <span style="font-family: 宋体;">的开å‘者都深有体会的,</span> <span lang="EN-US">java</span> <span style="font-family: 宋体;">代砾~–写的速度其实òq¶ä¸æ…¢ï¼Œåœ?/span> <span lang="EN-US">eclipse</span> <span style="font-family: 宋体;">å’?/span> <span lang="EN-US">jbuilder</span> <span style="font-family: 宋体;">½{‰å¯è§†åŒ–界é¢çš„帮助下åQŒç¼–写代ç å˜çš„è¶Šæ¥è¶Š½Ž€å•ï¼›ä½†æ˜¯åœ¨è°ƒè¯•çš„æ—¶å€™ï¼Œæ¯æ”¹å®Œä¸€ä¸?/span> <span lang="EN-US">java</span> <span style="font-family: 宋体;">或è€?/span> <span lang="EN-US">xml</span> <span style="font-family: 宋体;">代ç è¦é¢„览改的效果的è¯ï¼Œå¿…é¡»è¦é‡æ–°æž„建,部çÖvåQŒé‡å¯æœåС噍</span> <span lang="EN-US">,</span> <span style="font-family: 宋体;">˜q™äº›åŠ¨ä½œååå¤å¤åQŒæ¶ˆè€—的旉™—´ä¸å°‘ã€?/span> </p> <p class="MsoNormal" style="text-indent: 21pt;"> <span style="font-family: 宋体;">˜q‘期为公å¸å†™äº†ä¸ªå•å…ƒ‹¹‹è¯•的框æžÓž¼ŒåŸºæœ¬ä¸Šè§£å†³äº†ååå¤å¤æž„å¾åQŒéƒ¨¾|ÔŒ¼Œé‡å¯æœåŠ¡å™¨çš„é—®é¢˜ã€‚æˆ‘ä»¬çš„™å¹ç›®çš„都是è¿ç”¨äº†¾cÖM¼¼</span> <span lang="EN-US">struts</span> <span style="font-family: 宋体;">åQ?/span> <span lang="EN-US">spring</span> <span style="font-family: 宋体;">åQ?/span> <span lang="EN-US">hibernate</span> <span style="font-family: 宋体;">çš?/span> <span lang="EN-US">MVC</span> <span style="font-family: 宋体;">æž¶æž„åQˆä¸‹é¢ç®€¿U?/span> <span lang="EN-US">ssh</span> <span style="font-family: 宋体;">åQ‰ï¼Œä¸åŒçš„就是中间的</span> <span lang="EN-US">aop</span> <span style="font-family: 宋体;">是自己开å‘实现的åQŒè€Œæ²¡æœ‰è¿ç”?/span> <span lang="EN-US">spring</span> <span style="font-family: 宋体;">的。丘q‡ï¼Œæˆ‘们的å•元测试框架对标准çš?/span> <span lang="EN-US">struts</span> <span style="font-family: 宋体;">åQ?/span> <span lang="EN-US">spring</span> <span style="font-family: 宋体;">åQ?/span> <span lang="EN-US">hibernate</span> <span style="font-family: 宋体;">支æŒä¹ŸæŒºå¥½ã€?/span> </p> <img alt="STRUTS原ç†å›?JPG" src="http://www.aygfsteel.com/images/blogjava_net/jpeanut/%E5%9F%BA%E4%BA%8Ej2ee%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95%E6%A1%86%E6%9E%B6%E4%BB%8B%E7%BB%8D/STRUTS%E5%8E%9F%E7%90%86%E5%9B%BE.JPG" title="STRUTS原ç†å›?JPG" border="0" height="292" width="573" /> <br /> <p class="MsoNormal" style="margin-left: 5.25pt; text-indent: 15.75pt;"> <span style="font-family: 宋体;">上é¢çš„æ˜¯åœ?/span> <span lang="EN-US">ssh</span> <span style="font-family: 宋体;">的一‹Æ¡äº¤äº’的原ç†å›¾ï¼Œåšè¿‡</span> <span lang="EN-US">struts</span> <span style="font-family: 宋体;">å¼€å‘者都会很熟悉。首先,æ˜?/span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">通过</span> <span lang="EN-US">submit</span> <span style="font-family: 宋体;">çš?/span> <span lang="EN-US">url</span> <span style="font-family: 宋体;">ž®†è¡¨å•æ•°æ®æäº¤ç»™åŽå°</span> <span lang="EN-US">action</span> <span style="font-family: 宋体;">çš?/span> <span lang="EN-US">servlet</span> <span style="font-family: 宋体;">åQŒåŽå°é€šè¿‡åœ?/span> <span lang="EN-US">struts-config.xml</span> <span style="font-family: 宋体;">中的é…置扑ֈ°ç›¸å…³çš„××Ã?/span> <span lang="EN-US">Action</span> <span style="font-family: 宋体;">åQŒç„¶åŽé€šè¿‡Ã—××</span> <span lang="EN-US">Service</span> <span style="font-family: 宋体;">åQŒÃ—×Ã?/span> <span lang="EN-US">Dao</span> <span style="font-family: 宋体;">æ“作数æ®åº“,å†å°†æ•°æ®˜q”回¾l™å¦å¤–一ä¸?/span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">åQŒè®©ä»–显½Cºç»“æžœã€?/span> </p> <img alt="模拟STRUTSçš„å•元测试模拟图.JPG" src="http://www.aygfsteel.com/images/blogjava_net/jpeanut/%E5%9F%BA%E4%BA%8Ej2ee%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95%E6%A1%86%E6%9E%B6%E4%BB%8B%E7%BB%8D/%E6%A8%A1%E6%8B%9FSTRUTS%E7%9A%84%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95%E6%A8%A1%E6%8B%9F%E5%9B%BE.JPG" title="模拟STRUTSçš„å•元测试模拟图.JPG" border="0" height="307" width="563" /> <br /> <p class="MsoNormal" style="text-indent: 21.75pt;" align="right"> <span style="font-family: 宋体;"> <br /> </span> </p> <p class="MsoNormal" style="text-indent: 21.75pt;"> <span style="font-family: 宋体;">上é¢çš„图是我们å•元测试框架实现构建,部çÖvåQŒé‡å¯æœåŠ¡å™¨çš„åŽŸç†å›¾ã€‚我们很å®ÒŽ˜“从图上看的出æ¥ï¼Œæˆ‘们写了ä¸?/span> <span lang="EN-US">Test</span> <span style="font-family: 宋体;">×××</span> <span lang="EN-US">Action</span> <span style="font-family: 宋体;">æ¥æ¨¡æ‹?/span> <span lang="EN-US">2</span> <span style="font-family: 宋体;">ä¸?/span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">的动作,该类分æˆ</span> <span lang="EN-US">2</span> <span style="font-family: 宋体;">部分上é¢ä¸€éƒ¨åˆ†æ˜¯æ¨¡æ‹Ÿäº†</span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">™åµé¢</span> <span lang="EN-US">submit</span> <span style="font-family: 宋体;">的动作(包括模拟æäº¤¾l?/span> <span lang="EN-US">url</span> <span style="font-family: 宋体;">åQŒæ¨¡æ‹Ÿæäº¤æ•°æ®ï¼‰åQŒä¸‹é¢ä¸€éƒ¨åˆ†æ˜¯æŽ¥æ”¶Ã—×Ã?/span> <span lang="EN-US">Action</span> <span style="font-family: 宋体;">˜q”回的数æ®ï¼Œç„¶åŽåQŒè¿›è¡Œæ ¡éªŒï¼ˆæ­¤å¤„的校验,我们用了</span> <span lang="EN-US">junit</span> <span style="font-family: 宋体;">的断­a€åŠŸèƒ½åQ‰ã€‚通过ç”?/span> <span lang="EN-US">java</span> <span style="font-family: 宋体;">¾cÀL¥æ¨¡æ‹Ÿ</span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">的好处在于,我们å¯ä»¥å®Œå…¨æŠŠè¿™ä¸ªä¸€ä¸ªäº¤äº’作ä¸ÞZ¸€ä¸?/span> <span lang="EN-US">application</span> <span style="font-family: 宋体;">æ¥è¿è¡Œè“væ¥ï¼Œéžå¸¸å®ÒŽ˜“çš„åšåˆ°å•步调试,而ä¸ç”¨åˆ°çœŸå®žçš„åã^åîC¸ŠåQŒå¯åЍæœåŠ¡å™¨ä¸Šè¿è¡Œã€‚(注:此处æœ?/span> <span lang="EN-US">2</span> <span style="font-family: 宋体;">ä¸?/span> <span lang="EN-US">db</span> <span style="font-family: 宋体;">åQšå¼€å?/span> <span lang="EN-US">db</span> <span style="font-family: 宋体;">和测è¯?/span> <span lang="EN-US">db</span> <span style="font-family: 宋体;">åQŒè¿™ä¸ªå†ä»¥åŽçš„介¾l中会讲刎ͼ‰</span> </p> <p class="MsoNormal" style="text-indent: 21.75pt;"> <span style="font-family: 宋体;">我们˜q˜äؓ在这个架构上开å‘制定了‹¹ç¨‹åQ?/span> </p> <p class="MsoNormal" style="margin-left: 39.75pt; text-indent: -18pt;"> <span lang="EN-US"> <span>1</span> </span> <span style="font-family: 宋体;">把当天需è¦å¼€å‘的模å—çš?/span> <span lang="EN-US">java</span> <span style="font-family: 宋体;">代ç å…¨éƒ¨äº›å¥½</span> </p> <p class="MsoNormal" style="margin-left: 39.75pt; text-indent: -18pt;"> <span lang="EN-US"> <span>2</span> </span> <span style="font-family: 宋体;">通过˜q™ç§æ¨¡å¼è°ƒè¯•</span> <span lang="EN-US">java</span> <span style="font-family: 宋体;">代ç </span> </p> <p class="MsoNormal" style="margin-left: 39.75pt; text-indent: -18pt;"> <span lang="EN-US"> <span>3</span> </span> <span style="font-family: 宋体;">在确ä¿è¿™äº?/span> <span lang="EN-US">java</span> <span style="font-family: 宋体;">ä»£ç æ— è¯¯åŽï¼Œæž„å¾åQŒéƒ¨¾|ÔŒ¼Œå¯åЍæœåŠ¡å™?/span> </p> <p class="MsoNormal" style="margin-left: 39.75pt; text-indent: -18pt;"> <span lang="EN-US"> <span>4</span> </span> <span style="font-family: 宋体;">然厾~–写所有的</span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">åQˆå› ä¸ÞZ¿®æ”?/span> <span lang="EN-US">jsp</span> <span style="font-family: 宋体;">无需å¯åЍæœåŠ¡å™¨ï¼‰</span> </p> <p class="MsoNormal" style="text-indent: 21pt;"> <span style="font-family: 宋体;">˜q™æ ·åQŒåœ¨å¼€å‘一天的所有代ç ï¼Œå‡ ä¹Žéƒ½ä¸ç”¨æ€Žä¹ˆé‡å¯æœåŠ¡å™¨ï¼Œå¯ä»¥ä¸ºå¼€å‘äh员çœä¸‹å¾ˆå¤šæ—¶é—ß_¼Œä¹Ÿä‹Éå¾—å¼€å‘äh员喜‹Æ¢çš„啿­¥è°ƒè¯•å˜çš„异常½Ž€å•,æé«˜ä»£ç çš„è´¨é‡ã€?/span> </p> <p class="MsoNormal" style="text-indent: 21pt;"> <span style="font-family: 宋体;">我们已ç»åœ¨çœŸå®žçš„™å¹ç›®ä¸­å®žæ–½äº†è¯¥æµ½E‹çš„å¼€å‘,得到的效果和预期的一栗÷€‚当然还是比ä¸è¿‡å…¶ä»–语言的开å‘,ä¸è¿‡æˆ‘ä»¬çš„æž¶æž„è¿˜åœ¨ä¸æ–­æ”¹˜q›ï¼ˆé€šè¿‡æ”¹è¿›‹¹ç¨‹ã€ç¼–å†?/span> <span lang="EN-US">eclipse</span> <span style="font-family: 宋体;">½{‰å¼€å‘å·¥å…ïLš„æ’äšg½{‰æ–¹æ³•)åQŒä‹É我们的开å‘äh员å¯ä»¥æ›´åŠ å¿«çš„è¿›è¡?/span> <span lang="EN-US">j2ee</span> <span style="font-family: 宋体;">的开å‘ã€?/span> </p> <br /> <img src ="http://www.aygfsteel.com/JPeanut/aggbug/41768.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/JPeanut/" target="_blank">陈市æ˜?/a> 2006-04-18 23:04 <a href="http://www.aygfsteel.com/JPeanut/archive/2006/04/18/41768.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>åŸÞZºŽj2eeå•å…ƒ‹¹‹è¯•框架介ç»http://www.aygfsteel.com/JPeanut/archive/2006/04/18/41767.html陈市æ˜?/dc:creator>陈市æ˜?/author>Tue, 18 Apr 2006 15:03:00 GMThttp://www.aygfsteel.com/JPeanut/archive/2006/04/18/41767.htmlhttp://www.aygfsteel.com/JPeanut/comments/41767.htmlhttp://www.aygfsteel.com/JPeanut/archive/2006/04/18/41767.html#Feedback0http://www.aygfsteel.com/JPeanut/comments/commentRss/41767.htmlhttp://www.aygfsteel.com/JPeanut/services/trackbacks/41767.html

作者:陈市æ˜?/span>/Slipper Feng 摘自åQšhttp://www.aygfsteel.com/JPeanut

˜q›å…¥‹¹‹ä¼¼ž®ç»„也有ä¸å°‘æ—‰™—´äº†ï¼Œå¾ˆå¤šæ—‰™—´éƒ½æˆöåœ?/span> 51testing 论å›é‡Œï¼Œæ··åœ¨â€œæµ‹è¯•时代组â€çš„ qq ¾Ÿ¤é‡ŒåQŒå’Œåšæµ‹è¯•çš„æœ‹å‹èŠï¼ŒèŠä¹…了就产生了很多想法。呵呵,æƒÏx³•å˜æˆçŽ°å®žå˜›ï¼Œæ”¹ä¸äº†å¼€å‘çš„è€æœ¬è¡Œï¼Œ¾l“åˆæˆ‘们公å¸çš„开呿µ½E‹çްçŠÓž¼Œè‡ªå·±åŠ¨æ‰‹å†™äº†ä¸€å¥—å…³äºŽæµ‹è¯•æž¶æž„ï¼Œæ–¹ä¾¿æˆ‘ä»¬‹¹‹è¯•和开å‘ã€?/span>

è¯¥æž¶æž„ä¸»è¦æœ‰å®žçŽ°äº†ä¸€ä¸‹å‡ ç‚¹åŠŸèƒ½ï¼š

1 调试无需å¯åЍ䏭间ä»?/span>

2 æ•°æ®å’Œæµ‹è¯•代ç éƒ¨åˆ†é𔼛?/span>

3 自动生戋¹‹è¯•文档

4 å•å…ƒ‹¹‹è¯•实现功能‹¹‹è¯•

5 实现回归‹¹‹è¯•自动åŒ?/span>

6 。。。。�/span>

在åŽé¢çš„一些时é—ß_¼Œæˆ‘会陆箋详细的从å„个角度æ¥ä»‹¾l这个架构,架构也还在陆¾l­å¼€å‘和改进中ã€?/span>



]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º º£ÑôÊÐ| ½ðÑôÏØ| ÕØ¶«ÊÐ| ÍпËÍÐÏØ| ãä½­ÊÐ| ¶î¶û¹ÅÄÉÊÐ| ƾÏéÊÐ| ÄêϽ£ºÊÐÏ½Çø| ¶õ¶û¶à˹ÊÐ| ÓñÉ½ÏØ| òÔºÓÊÐ| ¼ªÄ¾Èø¶ûÏØ| Á¹³ÇÏØ| ÐÂÖñÏØ| »á¶«ÏØ| ÔÆºÍÏØ| áªÉ½ÏØ| ¸ÇÖÝÊÐ| Â¹ÒØÏØ| ÐûººÏØ| ÉÜÐËÊÐ| вÌÏØ| ½­±±Çø| ¿ËÉ½ÏØ| ÃϽòÏØ| À¼ÖÝÊÐ| ·±ÖÅÏØ| ³üÖÝÊÐ| ÑôË·ÏØ| ¼ªÊ×ÊÐ| ƽ¹ûÏØ| ÃÀ¹ÃÏØ| ¸£ÈªÊÐ| ³àË®ÊÐ| ÁúÉ½ÏØ| ÒÊÔ´ÏØ| ÄϾ¸ÏØ| ̨±±ÊÐ| Î÷°²ÊÐ| ÔÆÏöÏØ| °×³ÇÊÐ|