±¾ÎÄÒªµã
µ±ÎÒÃǵÄÍŶӹæÄ£¸ü´ó¡¢¹ý³Ì¸üΪ·±¶à²¢²ÉÓÃÁË΢·þÎñ¼Ü¹¹Ê±£¬ÏµÍ³²âÊÔµÄÄѶÈÔö¼ÓÁË¡£
²âÊÔµÄÍÆ½ø¹ý³ÌÒ²½ØÈ»²»Í¬¡£Ïà±ÈÓÚµ¥Ôª²âÊÔ»·¾³ÖУ¬ÎÒÃÇȱ·¦²âÊÔÌØ¶¨¹¦ÄܵãµÄÊֶΡ£
ÎÒÃÇÊÜÀ§ÓÚ´ú¼Û·Ç³£´óµÄÍøÂçµ÷Óᣳý·Ç½«¼¼ÊõÕ»¾ùÖÊ»¯²¢´ÓÖгé³öÍøÂçµ÷Ó㬷ñÔòÎÒÃÇÎÞ·¨°ÚÍѸÃÎÊÌâ¡£
´¦Àí״̬»úÐèÒªÐµĹ¤¾ß¡£
ÎÒÃÇÓ¦¸ÃÓúÃÕâЩÌìÉúÀöÖʵÄ״̬»ú¡£
ÔÚ¹ýÈ¥¡¡
Éú»î¾ÍÊÇÒ»¸ö²»¶ÏÃæ¶ÔÕϰµÄ¹ý³Ì¡£ÎÒÃÇÌø¹ýÁËÒ»¸öÕϰ£¬½ô½ÓמÍÒªÈ¥Ãæ¶ÔÏÂÒ»¸öÕϰ¡£ITÐÐÒµÓÈΪÈç´Ë£¬ÕâÒ»ÐÐÒµ½öÓÃÁ˶þÊ®µ½ÈýÊ®Äêʱ¼ä¾Í²½ÈëÁ˳ÉÊì¡£µ±È»ÔÚ´ËÆÚ¼ä£¬Ã¿¸ö´ÓÒµÈËÔ±Ò²¶¼²½ÈëÁË¡°Ãô½Ý¡±Ê±´ú¡£¡°²âÊÔ¡±¸ÅÄîÊÇÃô½ÝµÄ»ù±¾×é¼þ£¬Êǵ±Ç°´¦ÓÚ³ÉÊì״̬µÄITÐÐÒµÖеĹؼü´´ÐÂÖ®ËùÔÚ¡£
ÔÚÎÒ¸Õ¿ªÊ¼´ÓÊ¿ª·¢Ê±£¬ÎÒ¾³£»áΪÁËÈçºÎ±ÜÃâÔÚ´úÂëÖÐÒýÈëȱÏÝ£¬¶ø´ô´ôµØÃæ¶Ô¸÷´úÂë¿é¡£º¦ÅÂÒýÈëÁËÈí¼þȱÏÝ£¬ÎҾͻáÃûÓþɨµØ£¬¸ü²»ÓÃ˵ÔÚÎïÖÊÉϵÄËðʧÁË¡£ÁíÒ»·½Ã棬Èç¹ûÎÒ¾¹ýÒ»·¬Å¬Á¦ÕýÈ·µØÊµÏÖÁ˸Ľø£¬ÄÇôֻÄÜ˵ÎÒÊʺÏÓÚÍê³É·ÝÄڵŤ×÷¡£ÎÊÌâÔÚÓÚ£¬ÒªÎÞÈκηçÏÕµØÊµÏָĽø£¬¿ª·¢ÈËÔ±±ØÐë¶ÔϵͳÖеķ½·½ÃæÃæÁËÈçÖ¸ÕÆ¡£ÔÚÍŶӹ¤×÷µÄÇé¿öÏ£¬´ËÒªÇó¾ø¶ÔÊÇÄÑÒÔÆó¼°µÄ¡£Ò»ÖÖ¿ÉÐеÄ×ö·¨ÊÇÔÚ½»¸¶¹¦ÄÜÖо¡¿ÉÄÜÉÙµØ×ö³ö¸ü¸Ä£¬¼´ÍêÈ«±ÜÃâÖØ¹¹£¡±Ï¾¹£¬ËäÈ»¿ª·¢ÈËÔ±¿ÉÄÜ»áÔÚÖØ¹¹ÎÊÌâÉϱíÏÖ³öлÌìлµØ£¬µ«ÊÇÈç¹û³öÁËÈκβî´í£¬¾¡¹ÜÄã»áÏò²úÆ·¸ºÔðÈË£¨Product
Owner£©½âÊÍËµÖØ¹¹ÄܸĽø´úÂëµÄÖÊÁ¿£¬Ö»ÊǶԲúÆ·½»¸¶µÄµ×ÏßÓиºÃæµÄÓ°Ï죬Õâʱ¿ª·¢ÈËÔ±¾Í»á½«ÏñÅöÉÏÎÁÒßÒ»Ñù¶ÔÄã¾´¶øÔ¶Ö®¡£
×öһЩ²âÊÔÈçºÎ
ÏÖÔÚÎÒÃÇÌí¼ÓһЩ²âÊÔ
±àд²âÊÔÊÇΪÁËѰÇóÒ»ÖÖ·½·¨È¥ÑéÖ¤ÎÒÃÇ´úÂëµÄ¹¤×÷Çé¿ö¡£²âÊÔΪÎÒÃÇÌṩÁ˺ܺõĿò¼Ü»ò·½·¨£¬ÔÊÐíÎÒÃÇÔÚ²¢²»¾ß±¸ÍêÕû֪ʶµÄÇé¿öÏÂ×ö³ö¸Ä½ø¡£Èç¹ûÔÚÎÒÃÇ֮ǰµÄ¿ª·¢ÈËÔ±ÒѾ½«ËûÃǵÄ֪ʶÊʵ±µØ³éÈ¡µ½²âÊÔÖУ¬ÄÇôͨ¹ýÔËÐÐÕâЩ²âÊԾͿÉÒÔÈ·ÈÏÎÒÃǵıàÂ빤×÷²¢Î´ÆÆ»µÈκÎÊÂÇé¡£ÕâÌýÉÏÈ¥ºÜºÃ£¬µ«ÊDzâÊÔµÄЧÄÜÔ¶·ÇÈç´Ë¡£²âÊÔÒòΪÆä¸ü¶àµÄÌØÐÔ¶ø±»¿ª·¢ÈËÔ±ÉÍʶ¡£Ê×ÏÈ£¬²âÊÔ¿ÉÓÃÓÚ½ÌѧĿµÄ¡£²âÊÔ²»½öÄܸæËßÎÒÃÇ´úÂëÊÇ¿ÉÒÔ¹¤×÷µÄ£¬¶øÇÒ¸ø³öÁËÈçºÎʹÓôúÂëµÄÀý×Ó£¡ÎÒÃÇÏÖÔÚ¾ßÓÐÁ˶ԴúÂëÖеÄÐèÇóÎĵµ»¯µÄÌìȻ֮Ëù£¬ÕâЩÎĵµ½«Óë´úÂë²¢´æ¡£Æä´Î£¬²âÊÔ¿ÉÓë´úÂë¹²´æ£¬²¢¿ÉÖØ¸´Ê¹Óá£ÎÒÃÇ¿ÉÒÔÔÚÿ´Î¸ü¸ÄºóÔËÐвâÊÔ¡£ÎÒÃÇ¿ÉÒÔ½«¿ª·¢´Óijһ¸öÎȶ¨µã´¦¿ªÊ¼£¬½ø¶øÒýÈëһЩ¸Ä½ø£¬²¢½áÊøÓÚÁíÒ»¸öÎȶ¨µã´¦¡£Õâ²¢·ÇÊÇÒ»¸öÐÂÀíÄî¡£ÔÚÎÒѧϰ¼ÆËã»ú¿ÆÑ§Ê±£¬ÄÇЩ×î´ÏÃ÷µÄѧÉú¾ÍºÜ¿ìµØÑ§»áÁËÒ»ÖÖ³ÆÎª¡°µü´ú¿ª·¢¡±µÄ¿ª·¢·½·¨£¬¼´´Óϸ΢֮´¦×ÅÊÖ£¬ÈÃÊÂÇ鹤×÷ÆðÀ´£¬½ø¶øµü´úµØ×öÀ©Õ¹¡£ÓÀÔ¶²»ÒªÊÔͼһ´ÎÐԵرàдÍê³ÉÕû¸ö½â¾ö·½°¸¡£ÏÖÔÚÎÒÃǾßÓвâÊÔ£¬²¢ÇÒÎÒÃǵIJâÊÔÄÜ×Ô¶¯µØ¸æÖª¿ª·¢ÒÑ´¦ÓÚÒ»¸öÎȶ¨µã´¦¡£ÎÒÃÇ¿ÉÒÔ³ÆÍê³ÉÁËÒ»¸ö¡°ÂÌÉ«¡±µÄ¹¹½¨£¬ÕâÒâζ×ÅÒ»¸ö´úÂë¿é°æ±¾ÒѾ¿É½ÓÊÜ£¬²¢±»¹²Ïí£¬»òÊDz¿ÊðºÍʹÓá£
µ«ÊÇÔËÐвâÊÔÊÇ¿ÉÑ¡
´úÂ뿪·¢µÄÇé¿öÏà¶ÔÒªºÃһЩ¡£ÎÒÃÇ¿ÉÒÔ¸ü¸Ä²¢Öع¹´úÂ룬¼«´óµØ¸Ä½ø´úÂë¿âµÄÖÊÁ¿¡£Òò´ËÎÒÃDz»¿É±ÜÃâµØ»áÏÝÈëÏÂÒ»¸öϵÁеÄÎÊÌâÖУº¾¡¹ÜÎÒÃÇ¿ÉÒÔ´¦Àí¿ª·¢ÈËÔ±ÔÚ¹ýÈ¥Ëù×ö³öµÄ¸ü¸Ä£¬µ«ÊÇÈçºÎ¶Ô´ý¿ª·¢ÈËÔ±µ±Ç°Ëù×öµÄ¸ü¸ÄÄØ
ÎÒÃDZØÐë×÷Ϊһ¸öÍŶӿªÕ¹¹¤×÷¡£Ö»ÒªÎÒÃÇÔÚÿ´Î¸ü¸Äºó¾ÍÔËÐвâÊÔ£¬²¢Ö»½«ºÃµÄ´úÂëÌá¼°¸øÔ´´úÂë¿ØÖÆÏµÍ³£¬ÄÇô²»»á³öÏÖÈκÎÎÊÌâ¡£µ«ÊÇÎÊÌâÔÚÓÚ£¬¿ª·¢ÈËÔ±»òÕßÊÇÓÀºãµÄÀÖ¹ÛÖ÷ÒåÕߣ¬»òÕß½öÊÇÀÁ¶è¡£ÎÒÃÇ¿ÉÄÜ»áÈÏΪ£¬Õâô΢СµÄ¸ü¸Äµ±È»²»»áÔì³ÉÈÎºÎÆÆ»µ£¬ËùÒÔÈÃÎÒÃÇÖ±½ÓÌø¹ý±¾»ú²âÊÔ£¬Ìá½»µ½Ô´´úÂë¿ØÖÆÏµÍ³°É¡£µ±È»£¬ÕâÖÖ×ö·¨²»¿É±ÜÃâµØÒýÈëÁËһЩ²¢Î´¹¹½¨µÄ¸ü¸Ä£¬½ø¶øµ¼ÖÂʧ°ÜµÄ²âÊÔ¡£ÆäËü¿ª·¢ÈËÔ±Ò²»á¿´µ½Ëù×öµÄ¸ü¸Ä²¢·¸ÁËËùÓÐͬÑùµÄ´íÎ󡣸üÔãµÄÊÇ£¬ËûÃÇÊÇÔÚºÁ²»ÖªÇéµÄÇé¿öÏ·¸ÁËͬÑùµÄ´íÎó¡£Îª´Ë£¬ËûÃǽ«²»µÃ²»ÉîÍÚÔ´´úÂë¿ØÖÆÏµÍ³£¬·ÖÎö²âÊÔµÄʧ°Ü¡£Ã¿Î»²ÉÓÃÁ˸üеĿª·¢ÈËÔ±²»µÃ²»×öÕâЩ¹¤×÷¡£Òò´ËÓÉÎÒÃÇËùÒýÈëµÄÈí¼þȱÏݻᱻ¶à´ÎµÄÐÞÕý¡£Èç¹ûÍŶӾʹËÎļþ½øÐÐÒ»´Î½»Á÷£¬ÄÇôֻÐèÒªÒ»Ãû¿ª·¢ÈËԱȥÐÞÕýÎÊÌ⣬¶øÆäËü¿ª·¢ÈËÔ±µÈ´ýÐÞÕýºó½á¹û¼´¿É¡£
³ÖÐø¼¯³Éͨ¹ýÉèÖÃϵͳ¶ø¸Ä±äÁËÕâÖÖ×´¿ö£¬ÏµÍ³±»ÉèÖÃΪÎÞÂÛ¿ª·¢ÈËÔ±ÊÇ·ñÌá½»´úÂë¶¼×Ô¶¯ÔËÐвâÊÔ¡£´úÂ뽫ÔÚËùÓеĴúÂë¸ü¸ÄºóµÃÒÔÑéÖ¤£¬²¢ÇÒ²»ÔÙÒÀÀµÓÚÄÇÐ©Ô¼Êø¿ª·¢ÈËÔ±µÄ¼ÍÂÉ¡£¾ßÌå×ö·¨ÀàËÆÓÚ¶àÏß³ÌÈí¼þ¿ª·¢£¬ÎÒÃǽ«Ò»¸ö¡°±àÂëÐźŵơ±ÒýÈëµ½¿ª·¢·½·¨ÖУ¬¸ÃÐźŵƽ«Ðµ÷¶àλ¿ª·¢ÈËÔ±¶Ô´úÂëµÄ²¢·¢¸ü¸Ä¡£µ±¹¹½¨¸ø³ö¡°Â̵ơ±Ê±£¬¿ª·¢ÈËÔ±¿ÉÒÔ¸üдúÂë¿é¡£¶øµ±¹¹½¨¸ø³ö¡°ºìµÆ¡±Ê±£¬×îºóµÄ¸ü¸Ä²úÉúÁËÒ»Ð©ÆÆ»µ£¬Òò´Ë×îºÃ±ÜÃâÈç´Ë¡£
µ«ÊÂʵÉÏÐźŵƲ¢Î´Æð×÷Óá£ÎÊÌâÔÚÓÚ»¹´æÔÚ×ŵÚÈýÖÖ״̬£¬¼´Ò»¸ö¹¹½¨¿ÉÒÔÊÇ¡°µ±Ç°ÕýÔÚ¹¹½¨¡±µÄ״̬¡£ÕâÊÇÒ»¸ö»ÒÉ«µØ´ø£¬¿ª·¢ÈËÔ±²¢²»Á˽âÓÐÊÂÇé³ö´íÁË¡£½ûÖ¹½«¹¹½¨Ìá½»µ½ºìµÆ×´Ì¬µÄ×î³õ¿¼ÂÇÊǽµµÍÐÞ¸´±»ÆÆ»µ¹¹½¨µÄ¸´ÔÓ¶È£¬¶ø·ÇÒâÔÚ×î´ó»¯¿ª·¢ÈËÔ±µÄÉú²úÁ¦¡£ÊÇ·ñ¿ÉÒÔ×öÒ»´Î¸üУ¿Èç¹ûÄãÔ¸ÒâÈ¥Ãæ¶ÔÈκÎDZÔÚµÄÎÊÌ⣬Äǵ±È»¿ÉÒÔ¡£ÊÇ·ñ¿ÉÒÔÌá½»´úÂ룿µ±È»¿ÉÒÔ£¬Ö»ÒªÕýÔÚ½øÐй¹½¨²¢·Ç´¦ÓÚºìµÆ×´Ì¬¡£ÕâЩ²ßÂÔÊÇÖð½¥Ðγɵģ¬ÊÇÓÉÄÇЩѰÇóÒÔºÏ×÷·½Ê½¿ªÕ¹¹¤×÷µÄÍŶÓËùÖÆ¶¨µÄ£¬¶ø·ÇÔ¤ÏÈÉè¼ÆºÃµÄ¡£
Òò´Ë£¬¹¹½¨ËùÕ¼ÓõÄʱ¼äÔ½À´Ô½³¤¡£
ÆÆ»µ¹æÔòµÄħկ
¼Ù¶¨ÎÒÃǵ±Ç°ÕýÔÚ¹¹½¨Ò»¸öÓ¦Ó㬲¢³Ðŵ×ñѽµµÍ¹¹½¨Ê±¼äÕâÒ»ÀíÄî¡£µ«ÊǹýÁËÁù¸öÔº󣬲âÊÔ¾ÍÍÏ¿åÁËÎÒÃÇ¡£ÏÖÔÚ¹¹½¨Ê±¼ä´Ó°ë¸öСʱ±ä³ÉÁËÒ»¸öСʱ¡£ÎÒÃǵÄÍŶӾßÓÐÊ®Ãû¿ª·¢ÈËÔ±£¬ÐÒÔ˵ÄÊÇÎÒÃÇÿÌìÖ»×öÒ»´ÎÌá½»¡£Ã¿¸öÈ˶¼¿ªÊ¼ÈÏʶµ½£¬ËûÃǵĴ󲿷Öʱ¼äÏûºÄÔÚÖîÈ罫´úÂë¼ÓÈëÏîÄ¿µÈÊÂÇéÉÏ£¬¶ø·ÇÓÃÓÚʵ¼ÊµÄ´úÂ뿪·¢¡£ÔÚÿ´Î¹¹½¨±ä³ÉÂ̵Æ×´Ì¬Ê±£¬¾Í»á·¢ÉúÒ»´Î¾ºÕù£¡¿ª·¢ÈËÔ±·ÅÈÎ×ÔÁ÷²¢È®ÑÀ½»´íµØÏ໥Ìá½»¡£¹¹½¨»á±ä³ÉºìµÆ×´Ì¬£¬Õâʱ²»»áÓÐÈËÏ뵽ͨ¹ýÉîÍÚ×î½üÎå´ÎµÄÌá½»¶ø·¢ÏÖÎÊÌâ¡£àÞ£¬ÎÒ˵´íÁË£¬ÏÖÔÚÒѾÊÇÁù´ÎµÄÌá½»ÁË£¬ÉîÍÚÁù´ÎÌύȥ·¢ÏÖÎÊÌ⡣ÿ¸öÈ˶¼ÈÏʶµ½ÕâÔÚ·½·¨ÉÏÊÇ´æÔÚÎÊÌâµÄ¡£Scrum
Master²»Ô¸ÈÏͬÔÚºìµÆ×´Ì¬¹¹½¨ÉϵÄÌá½»ÊDz»¿É±ÜÃâµÄ¡£ËûÃÇ»áÍ£Ö¹±àÂëÐźŵƣ¬Ñ¡¶¨Ò»Î»¿ª·¢ÈËÔ±ÓÃÒ»ÖܵÄʱ¼äÈ¥½«ºìµÆ×´Ì¬µÄ¹¹½¨×ª±äΪÂ̵Æ×´Ì¬¡£µ±ÁÙ½ü·¢²¼Ê±£¬ËûÃǾͶÔÖ÷´úÂë×öÒ»¸ö·ÖÖ§£¬È»ºó¿ª·¢ÈËÔ±ºÍ²âÊÔÈËÔ±ÔÙÓÃÒ»ÖÜʱ¼ä£¬Á¦Í¼¸ø³öһЩ°´ËµÊÇ¿ÉÒÔ¡°½»¸¶¡±²¢¹¤×÷µÄ´úÂë¡£
¾¿¾¹ÊÇÄÄÀïÍêÈ«×ö´íÁË
ÎÒÃÇ¿´Ò»ÏÂ×îнøÕ¹£¬µ±Ç°ºÜ¶àÍŶӶ¼ÔÚ¾ÀúÕâÑùµÄÎÊÌâ¡£ÄÇôDZÔڵĽâ¾ö·½°¸ÊÇʲô£¿ÈÃÎÒÃǽ«ÎÊÌâ´Ó×é³ÉÉÏ·Ö½âΪÁ½¸ö×ÓÎÊÌ⣺
1.¹ý¶àµÄ¿ª·¢ÈËÔ±ÊÔͼȥ·ÃÎÊͬһ´úÂë¿é¡£
2.´úÂëÑéÖ¤ÐèÒª¹ý³¤µÄʱ¼ä£¬ÐźŵƲ»Äܾ¡¿ìµØÇå¿Õ¡£
Èç¹ûÄÜ»º½âÆäÖÐÈÎÒ»×ÓÎÊÌ⣬ÄÇô¸ÃÎÊÌâ¾Í»áÓÈжø½â¡£
½«¿ª·¢ÈËÔ±·ÖΪÍŶÓ
ÈÃÎÒÃÇÊ×ÏÈ¿´Ò»ÏµÚÒ»¸ö×ÓÎÊÌ⣺¹ý¶àµÄ¿ª·¢ÈËÔ±¹¤×÷ÓÚͬһ¸ö´úÂë¿âÉÏ¡£Ê×ÏÈ£¬ÎÒÃǵ±È»ÍêÈ«ÓÐÀíÓɹÍÓúܶàµÄ¿ª·¢ÈËÔ±¡£ÕâÊdzöÓڼӿ쿪·¢µÄ¿¼ÂÇ¡£½«¿ª·¢ÈËԱDzËͻؼÒÎÞÖúÓÚÎÒÃǽâ¾öÎÊÌâ¡£ÕâÔÚijÖÖ·½Ê½ÉϻرÜÁËÎÊÌâ¡£ÎÒÃÇÐèÒªµÄÊÇÔÚ±£³ÖÉú²úЧÂʵÄͬʱ£¬½µµÍ¶Ô´úÂë¿â»ò³ÖÐø¼¯³ÉÁ÷Ë®ÏßµÄÕùÓá£ÎÒÃÇÏëÒª¼õÉÙµÄÊÇ¿ª·¢ÈËÔ±Ö®¼äµÄÏ໥µÈ´ýÎÊÌâ¡£
»¹ÓÐÁíÒ»ÖÖ·½·¨¡£ÎÒÃÇ¿ÉÒÔ½«Ò»¸ö´úÂë¿â·Ö½âΪ¶à¸ö´úÂë¿â£¬Ã¿¸ö´úÂë¿â¶ÔÓ¦²»Í¬µÄ¹¤×÷ÍŶӡ£ÔÚ²¢·¢±à³ÌµÄÇé¿öÏ£¬ÕâÖÖ×ö·¨¿ÉÒÔÒÆ³ýµ¥Ò»»¥³âËø£¬²¢ÒÔ¶àÖØËøÈ¡¶ø´úÖ®£¬½ø¶ø½µµÍÁ˾ºÕù£¬¼õÉÙÁË¿ª·¢ÈËÔ±µÄµÈ´ý¡£ËäÈ»ÎÒÃǽâ¾öÁËÒ»¸öÎÊÌ⣬µ«ÊÇÓÖÒýÈëÁËÁíÒ»¸öÎÊÌâ¡£ÎÒÃÇÏÖÔÚÓжà¸ö²»Í¬µÄ¿É½»¸¶Èí¼þ£¬ËüÃÇ¿ÉÒÔÊÇ΢·þÎñ»òÊÇÈí¼þ¿â£¬µ«¶¼ÊǾ¹ý¶ÀÁ¢²âÊԵġ£ÕâЩ¿É½»¸¶Èí¼þ¹²Ïíͬһ¸öºÏÔ¼¡£µ«ÊDzâÊÔÎÞ·¨¿´µ½ÕûÌåµÄÊÓͼ¡£ÎÒÃÇÎÞ·¨È·¶¨ÕâЩ×é¼þ¼äµÄÏ໥½»»¥Çé¿ö£¬ÒòΪËüÃÇÏÖÔÚ¶¼ÊǶÀÁ¢µÄϵͳ£¬¾ßÓжÀÁ¢µÄ²âÊÔ¼¯¡£ÏÖÔÚÎÒÃǵIJâÊԵİüÈÝÐԺͿÉö¾ÙÐÔ¸üµÍ£¬×÷ΪÑéÊÕ²âÊÔ£¨Acceptance
Test£©×îÖÕ¶Ô²úÆ·¸ºÔðÈË£¨Product Owner£©ºÍÓû§µÄÓô¦¸üµÍ¡£
Òò´ËÎÒÃÇÒýÈëÁ˵ڶþ½×¶ÎµÄ³ÖÐø¼¯³ÉÁ÷Ë®Ïß¡£¸ÃÁ÷Ë®Ïß½«¿É½»¸¶Èí¼þ×éºÏÔÚÒ»Æð£¬¸ø³öÊÔÑéϵͳÔËÐеIJâÊÔ¡£Îª¹ÜÀíÕâЩ²âÊÔ£¬ÎÒÃÇÒýÈëÁËÒ»¸öеÄÍŶӣ¬²¢¶Ô²âÊÔÆðÁËеÄÃû×Ö£¬³ÆÎª¡°¶Ëµ½¶ËµÄ²âÊÔ¡±¡¢¡°ÑÌÎí²âÊÔ¡±»ò¡°ÑéÊÕ²âÊÔ¡±¡£
ÏÖÔÚÎÊÌâËùÓиı䣬Ӧ¸Ã˵·¢ÉúÁËÏ൱´óµÄ¸Ä±ä¡£ÎÒÃÇÊÔͼȥ¼¯³ÉµÄ×é¼þÏÖÔÚ¸üÏñÊÇһЩºÚÏä×é¼þ¡£¶ÔÓÚÄÜÔÚºÎÖ̶ֳÈÉÏ¿ØÖÆÕâЩ²âÊÔµÄÄÚÔÚÔËÐлúÖÆ£¬ÎÒÃÇÏÖÔÚʧȥÁË¿ØÖÆ¡£Ôڴ˲ãÃæÉÏ£¬ÎÒÃǵIJâÊÔÊǸü¸ß²ã¼¶µÄ²âÊÔ£¬ËüʵÏÖ´ú¼Û±ÈÎÒÃÇÒÔǰʹÓõĵ¥Ôª²âÊÔ¸ü´ó£¬²¢ÐèÒªºÜ³¤µÄÔËÐÐʱ¼ä¡£
ÏÖÔÚÎÒÃÇÇзÖÁË´úÂë¿â£¬²¢·¢ÏÖ²»Í¬µÄÍŶÓÔٴξßÓÐÁË×é¼þ¿ª·¢µÄÄÜÁ¦£¬µ«ÊÇÔÚ½«¸÷¸ö×é¼þ¼¯³ÉÔÚÒ»Æðʱ£¬ÎÒÃÇÓֻص½ÁËÀÏÎÊÌâÉÏ¡£²âÊÔÐèÒªºÜ³¤µÄÔËÐÐʱ¼ä¡£¿ÉÒÔ˵£¬ÎÒÃÇÖ»ÊÇÍÆ³ÙÁËÕâ¸öÎÊÌâµÄ·¢Éú¡£Ë³´Ë˼·£¬½«ÏµÍ³×é¼þ»¯ÕýÊÇ΢·þÎñµÄÌØµã¡£Õâ±¾ÉíÊÇÒ»¸öºÃ×ö·¨£¬µ«ÊǶÔÓÚ½â¾öÎÒÃǵÄÎÊÌâÓÐЩ»ÉßÌí×㣬Òò´ËÎÒÃÇÓÖÔٴλص½ÁËͬһÎÊÌâÉÏ¡£
Ãæ¶Ô·¿¼äÖж¯×÷³Ù»ºµÄ´óÏó
ÄÇô¹¹½¨ÎªÊ²Ã´»áÈç´ËÖ®Âý£¿ÎÊÌâµÄºËÐÄÔÚÓÚÍøÂçµ÷Ó㨻ò´ÅÅÌ·ÃÎÊ£©Òª±È·½·¨µ÷ÓÃÒªÂýºÜ¶à¡£Ò»´ÎÍøÂçµ÷ÓÃÖÁÉÙÓÃʱ20ºÁÃ룬µ«ÊÇ·½·¨µ÷Óôú¼Û·Ç³£µÍ£¬ÒÔÖÁÓÚ¿ÉÒÔÔÚͬÑùµÄʱ¼äÖÐ×öÉϰÙÍò´ÎµÄ·½·¨µ÷Óá£Òò´Ë²»ÉÙÈËÈÏΪ£¬Ó¦Ê¹Óõ¥Ôª²âÊÔÌæ´ú¼¯³É²âÊÔ£¨ÕâÀïÎÒÖ¸µÄÊÇËùÓвÉÓÃÍøÂçµ÷ÓõIJâÊÔ£©¡£ËäÈ»ÕâÒ»×ö·¨¿ÉÒÔ½â¾öÎÊÌ⣬µ«ÊÇÎÒÃÇ»¹Ó¦¸Ã¿´µ½£¬·¿¼äÀïÃæ»¹ÈûÈëÁËÁíÍâһͷ´óÏó¡£µ¥Ôª²âÊÔ²¢·Ç¼¯³É²âÊÔ£¬Æä²î±ðÔÚÓÚµ¥Ôª²âÊÔÒÅÁôÏ´󲿷ֵÄ×îÖÕϵͳδ²âÊÔ¡£µ«ÊÇ£¬µ¥Ôª²âÊÔµÄÈ·¶Ô¿ª·¢ÈËÔ±±àдµÄ´úÂë×öÁ˲âÊÔ¡£¿¼Âǵ½¡°ÅäÖÃÒ²ÊÇÒ»ÖÖ´úÂ롱£¬ÄÇôÔÚÅäÖÃSpring¡¢Êý¾Ý¿â¡¢NginxµÈʱ£¬ÎªÊ²Ã´ÎÒÃÇ»áºÜ¸ßÐ˲»ÓöÔÅäÖÃ×ö²âÊÔ£¬µ«È´Ò»¹á¼á³ÖÓ¦²âÊÔ¿ª·¢ÈËÔ±Ëù±àдµÄËùÓÐJava´úÂ룿ΪʲôÓïÑÔÊÇÕë¶ÔÌØ¶¨¹Ø×¢µÄ£¬¶øÅäÖÃÈ´²»ÊÇÄØ£¿ÒªÊÇÕâÑùµÄ»°£¬ÎÒÃÇÐèÒªÒ»ÖÖÄÜÈ·±£ÓïÑÔÖÐÀàÐͰ²È«µÄ±àÒëÆ÷¡£ÊÂʵÉϲ¢²»´æÔÚÓÃÓÚÅäÖõıàÒëÆ÷£¬Èç¹ûÓÐÐèÒª×ö²âÊÔ£¬ÄÇôËü±ØÐëÊÇÎÞÀàÐÍÅäÖÃÂð£¿Òª½«¼¯³É²âÊÔÌæ»»Îªµ¥Ôª²âÊÔµÄÏë·¨£¬¾ÍÊÇÏëÒª×ö¸üÉٵIJâÊÔ¡£µ¥Ôª²âÊÔ¾ßÓÐÆä×ÔÉíµÄ¹¦ÄÜ£¬ÆäÖÐ×îÖØÒªµÄ¾ÍÊÇÓÃÓÚÁ¼ºÃÈí¼þ¿ª·¢¹ý³ÌµÄ¿ª·¢¹¤¾ß¡£´Ó×îÖÕÓû§µÄ¼ÛÖµÉÏ¿´£¬ËüÃÇÊDz»¿ÉÌæ´úµÄ¡£
ÕùÂÛ»¹´æÔÚÁíÒ»¸ö·½Ãæ¡£ÔÚµ¥Ôª²âÊÔ»·¾³ÖУ¬ÎÒÃÇ¿ÉÒÔ´ÓÈÎÒ»¿ªÊ¼×´Ì¬ÉèÖòâÊÔ¡£ÎÒÃÇ¿ÉÒÔ·ÃÎÊÄ£Äâ¶ÔÏó£¨Mock£©ºÍ×®³ÌÐò£¨Stub£©£¬²¢¿ÉÒÔ²Ù×ݲâÊÔµÄÁ÷³Ì£¬Ê¹Ö®¾Û½¹ÓÚÏëÒª²âÊÔµÄÌØ¶¨¹¦ÄܵãÉÏ¡£ÕâÖÖÄÜÁ¦¿ÉÒÔͨ¹ýʹÓÿØÖÆ·´×ª£¨IoC£©³Ðµ££¬Ò²¿ÉÒÔͨ¹ýÖØÔØ·½·¨£¨ÀýÈ磬³éÏ󹤳§·½·¨Ä£Ê½£©ÊµÏÖ¡£Ê¹Óü¯³É²âÊÔʱ£¬ÎÒÃǵĿØÖÆÄÜÁ¦ºÜÉÙ¡£ËäÈ»ÎÒÃÇ¿ÉÒÔͨ¹ýÔÚÍøÂç²ãʹÓÃWireMockµÈ¹¤¾ß·ÃÎÊMockºÍStub£¬µ«ÊÇÎÒÃDz»ÄÜ×¢Èë´úÂëµ½ÕâЩ×é¼þÖС£Òò´ËÎÒÃÇÇ¿ÖÆÒÔ״̬»ú·½Ê½Óëϵͳ½»»¥¡£±ØÐë±éÀú¶à¸öϵͳ״̬²ÅÄܵ½´ïËùÐè²âÊÔµÄÌØ¶¨ÐèÇó½×¶Î£¬²¢±ØÐë·´¸´µØ×öÍøÂçµ÷Ó᣺ÁÎÞÒÉÎÊ£¬ÕâЩ²âÊԵĴú¼Û·Ç³£Ö®´ó£¡
ÏÖÔÚÎÒÃÇÓÐÁËÍêÕûµÄ²âÊÔÑ»·¡£¿ª·¢ÍŶÓÒ²¾ßÓÐÁËÉú²úÁ¦£¬µ«ÊÇÎÒÃÇËù·ÖÏíµÄºÏÔ¼ÉϾßÓÐÁ˸ü¶àµÄ·çÏÕ¡£²»Í¬µÄ¿É½»¸¶Èí¼þ×éºÏÏÖÔÚÂäÔÚÁËÁíÒ»¸öµÄÍŶÓÉÏ£¬ÎÞ·¨ÔËÐÐÓÚ¿É×ö·½·¨µ÷Óõĵ¥Ôª²âÊÔ»·¾³ÖС£ÎÒÃDZØÐëÒª×öÍøÂçµ÷Óò¢²âÊÔ״̬»ú¡£µ±Ç°ÔÚÁ÷Ë®ÏßÖУ¬Èí¼þ¿ª·¢ÖеÄ×èÈûÖ®´¦Ö»ÊÇÏòÏÂÒÆ¶¯ÁË£¬µ«ÊÇÒÀÈ»´æÔÚ¡£
ÏÖÔÚÈÃÎÒÃÇתÏò¡°Âó̡±·½·¨
ÈÃÎÒÃÇÔÙ¿´Ò»ÏÂÕâЩ²âÊÔ¡£ÎÒÃÇ×ÔÒ»¿ªÊ¼ÒÔÀ´£¬¾ÍÒÑÔںܴó³Ì¶ÈÉϸĽøÁËÕûÌå¹ý³Ì¡£ÎÒÃǹ¹½¨ÁËÎÒÃÇ¿ÉÒÔ×öµÄËùÓе¥Ôª²âÊÔ£¬ÕâЩµ¥Ò»²âÊÔÔËÐпìËÙ¡£µ«ÊÇÏÖÔÚÎÒÃǾßÓÐÁË΢·þÎñºÍ¶à¸ö²»Í¬µÄÍŶӣ¬²¢¼¯³ÉÁ˵ÚÈý·½×é¼þºÍÉÌÒµÈí¼þ£¬ÏÖÔÚÎÒÃÇÏëÒªÖ¤Ã÷ËùÓÐÕâÒ»Çж¼¹¤×÷Õý³£¡£ÎÒÃÇÖªµÀ£¬ÒªÖ¤Ã÷ËùÓÐϵͳ¼¯³ÉÔÚÒ»Æð¹¤×÷Õý³££¬Õâ²¢·ÇÄÜÏñ¶Ôµ¥Ò»¹¦ÄܵãÄÇÑùÊÇ¿ÉÒÔÑéÖ¤µÄÊÂÇé¡£ÎÒÃDZØÐëͨ¹ýһϵÁв»Í¬µÄ²½Ö轫ÕâÒ»Áª°îϵͳÔËÐÐÒ»±é¡£
¾Ù¸öÀý×Ó£¬¼Ù¶¨ÎÒÃÇÕýÔÚÎªÍøµê¿ª·¢Ò»¸ö½áËã¹ý³Ì¡£ÎÒÃDzÉÓÃÁ˲»Í¬µÄ΢·þÎñ´¦Àí²»Í¬µÄ¹¦ÄÜ£¬Æ©ÈçÒ»¸ö΢·þÎñ´¦Àí¹ºÎï³µ£¬ÁíÒ»¸ö΢·þÎñ´¦Àí²úÆ·ÔÚÍøµêÖеÄչʾ£¬»¹ÓÐÒ»¸ö΢·þÎñ´¦Àí¹ã¸æµÈ¡£ËùÓÐÕâЩ×é¼þ¹²Ïíͬһ¸öºÏÔ¼£¬µ«ÊÇ¿ª·¢ÊǶÀÁ¢µÄ¡£ÎÒÃÇÐèÒª±àдһ¸öÖ´ÐÐÕû¸ö¹ý³ÌµÄ²âÊÔ¡£ÔÚµ¥Ôª²âÊÔ³¡¾°Ï£¬ÎÒÃÇ¿ÉÒÔ¶ÀÁ¢²âÊÔÿ¸öÌØÐÔ¡£ÀýÈ磬ÎÒÃÇ¿ÉÒÔ²âÊÔÒ»¸öÉÌÆ·ÊÇ·ñ¿ÉÒÔ·ÅÈëµ½¹ºÎï³µÖУ¬»òÊÇ¿ÉÒÔ²âÊÔ¹ºÎï³µÖеÄËùÓÐÉÌÆ·µÄ×ܼÛÊÇ·ñÊʵ±¡£µ«ÊÇÏÖÔÚÎÒÃÇÐèÒª²âÊÔµÄÊÇ΢·þÎñºÍWebÃÅ»§¡£ÀýÈ磬ÔÚ²âÊÔ¹ºÎï³µµÄ¹¦ÄÜÊÇ·ñÍêÈ«Õýȷǰ£¬ÎÒÃÇÒª½«ÉÌÆ·ÖÃÓÚ¹ºÎï³µÖС£ÕâÒâζ×Å£¬ÎÒÃÇÐèÒªä¯ÀÀÍøÕ¾¶¨µã»÷ÉÌÆ·ÌõÄ¿£¬½«ËüÃÇÌí¼Óµ½¹ºÎï³µÖС£ÉÏÊöËùÓвÙ×÷Ò»²¢¹¹³ÉÁËÒ»ÖÖÐÂÀàÐ͵IJâÊÔ£¬ÎÒ½«Æä³ÆÎª¡°Âó̡±²âÊÔ£¨Journey
Test£©¡£Í¨³£ÎÒÃDZØÐ뽫ÕâЩ×é¼þ¿´×÷ÊǺÚÏ䣬²¢²ÉÓÃʵÏÖ´ú¼ÛºÜ´óµÄ¹ý³Ì¡£
ÔÚϱíÖУ¬ÎÒÃDz¢ÅÅÁгöÁËһЩ¡°Âó̡±¡£ÆäÖеÄÿ¸ö²½ÖèʹÓÃÒ»¸ö×Öĸ±íʾ£¬´óÖ±íʾÁË·ÃÎÊÒ»¸öWebÍøÒ³²¢×öµã»÷µÄ²Ù×÷¡£±íÖÐÁгöÁËÎå¸ö²»Í¬µÄ¡°Âó̡±£¬³ýÁË¡°ÂóÌ5¡±Ö®Í⣬ÆäËü¶¼ÊÇ´ÓAÒ³Ãæ¿ªÊ¼£¬²¢Ìø×ªµ½CÒ³Ãæ¡£ÒÀ´ËÀàÍÆ¡¡

ÕâЩ¡°Âó̡±µÄÔËÐдóÔ¼ÐèÒª30Ãëʱ¼ä¡£
ÄǺã¬ÏÂÃæÈÃÎÒÃÇ×Ðϸ²é¿´ÕâЩ¡°Âó̡±£¬ÆäÖн«»á½Òʾ³öÈçÏÂÖØÒªÌØÐÔ¡£
ËüÃÇÊǸ߶ÈÖØ¸´µÄ¡£ÕâÖ÷ÒªÊÇÓÉÓÚËùÓС°Âó̡±ÔÚ½áÊøÊ±µÄ²½Ö輤Ôö£¬¼´²½ÖèF¡¢GºÍH¡£
²½ÖèBºÍDÏà±ÈÓÚ²½ÖèF£¬ËüÃǵĿªÊ¼·½Ê½²»Í¬£¬»òÊÇÊÜÓ°ÏìµÄ·½Ê½²»Í¬£¬µ«ÊÇÖÕÖ¹µÄ·½Ê½Ò»Ñù¡£
ÆäÖÐÏÔÈ»´æÔÚһЩµÍЧ֮´¦¡£ÎÒÃÇ¿ÉÒÔÕûºÏ¡°Âó̡±²âÊÔ¡£ÔÚϱíÖУ¬ÎҾͽ«Îå¸ö¡°Âó̡±¼õÉÙΪÈý¸ö¡£

ͨ¹ýÃ÷È·¸÷¡°Âó̡±µÄ²âÊÔ·¶³ë£¬ÎÒÃÇʵÏÖÁËÓëÉϱíͬÑùµÄ¹¦Äܸ²¸Ç¡£Õâ¿É½ÚʡԼ40%µÄʱ¼ä¡£Èç¹ûÄÜÔÚÕû¸ö²âÊÔ¼¯ÉÏ»ñµÃͬÑùµÄÐÔÄÜÔöÒæ£¬Ç±Ôڿɽ«30ÃëµÄ¹¹½¨ÓÅ»¯Îª22Ãë¡£ÒÔÎÒ¸öÈ˾Ñé¿´£¬¿É×öÖÇÄÜ×éºÏµÄ¡°Âó̡±²âÊÔÄܸø³ö¸ü¼ÓÏÔÖøµÄÐÔÄÜÔöÒæ¡£
Òò´Ë£¬²âÊÔÕߵŤ×÷ÏÖÔÚ±ä³É½«²âÊÔÕûºÏΪһ¸öÓÐЧµÄ²âÊԽű¾²¢¼ÓÒÔ¹ÜÀí¡£µ«ÊÇÒÀÈ»ÓÐһЩÎÊÌâÐèÒª¿¼ÂÇ£º
1.ÈçºÎµ÷ÓÃÕâЩ²âÊÔ£¿²âÊÔ²»ÔÙ¾Û¼¯ÓÚÌØ¶¨µÄÐèÇ󣬶øÊÇÒ»ÌËÔËÐоÍÊʺ϶à¸öÐèÇó¡£
2.ÈçºÎʶ±ð¼ä϶£¿ÈçºÎÖªµÀÓÐÄÄЩÒÅ©£¿
3.ÈçºÎʶ±ðÈßÓàµÄ½Å±¾£¿Èç¹û³öÏÖÁËеÄÐèÇó£¬ÎÒÃÇÈçºÎÖªµÀÓ¦ÔÚÄÄÀï²åÈëÕâЩжÏÑÔ£¿
Ϊ´Ë£¬ÎÒ±àдÁËÒ»¸ö³ÆÎª¡°Cascade¡±µÄ²âÊÔ¿ò¼Ü£¬Ä¿µÄ¾ÍÊǹÜÀíÕâЩ¸´ÔÓÐÔ¡£
ÓÐеÄÎÊÌ⣿ÎÒÃÇÓÐÐµĹ¤¾ß£¡
ÄÇôCascadeÊÇÈçºÎ½â¾öÕâЩÎÊÌâµÄ
ÎÒÃǽ«¹¹³ÉÒ»¸ö¹ý³ÌµÄÿ¸ö²½Öè·Ö±ð¶¨ÒåΪ¶ÀÁ¢µÄÀà¡£½ø¶øCascade¿ò¼Ü½«¿É´ÓÖйÜÀí²¢Éú³É²âÊÔ¡£
ÔÚCascadeµÄÔ´´úÂëÖУ¬ÌṩÁËһЩ¹ØÓÚÈçºÎʹÓõÄÀý×Ó¡£µÚÒ»¸öÀý×Ó¸ø³öÁËÈçºÎʹÓÃCascade²âÊÔÒ»¸öÍøÂçÒøÐÐÍøÕ¾¡£
ÎÒÃDZØÐëÑ¡¶¨²âÊÔ¿ªÊ¼µã¡£ÔÚ±¾ÀýÖУ¬ÎÒÃǽ«´ò¿ªä¯ÀÀÆ÷¼ÓÔØµÇÂ½Ò³Ãæ¡£ÔÚGitHubÉÏ¿ÉÒԲ鿴¹¤×÷´úÂëÀý×Ó¡£
@Step
public class OpenLandingPage {
@Supplies
private WebDriver webDriver;
@Given
public void given() {
webDriver = new ChromeDriver();
}
@When
public void when() {
webDriver.get("http://localhost:8080");
}
@Then
public void then() {
assertEquals("Tabby Banking", webDriver.getTitle());
}
} |
×¢Ò⣺ÔÚCascade¿ò¼ÜÖУ¬¹ã·ºµØÊ¹ÓÃÁ˱ê×¢¡£²½ÖèÊÇά»¤ÔÚ²»Í¬µÄÎļþÖеģ¬Ã¿¸ö²½ÖèÎļþÓÃ@Step±ê×¢¡£Êý¾Ý²ÉÓÃÒ»ÖÖIoCÐÎʽÔÚ²½Öè¼ä¹²Ïí£¬Ê¹ÓÃÁË@SuppliesºÍ@Demands±ê×¢¡£ÉúÃüÖÜÆÚ·½·¨±êעΪ@Given¡¢@WhenºÍ@Then·½·¨¡£
ÕâÀïÏêϸ½éÉÜÒ»ÏÂÉúÃüÖÜÆÚ·½·¨¡£@GivenÓÃÓÚ±ê×¢Ò»¸ö½«Êý¾ÝÌṩ¸ø²âÊԵķ½·¨¡£²âÊÔÊý¾ÝÔÚËùÓв½ÖèÎļþ¼ä¹²Ïí¡£ÔÚÕâÒ»·½Ê½Ï£¬²½ÖèÎļþÏ໥Ð×÷£¬ÃèÊöÁ˸÷²½ÖèËù¹²Í¬²Ù×÷µÄÊý¾Ý¡£@When±êעָʾÁËÔÚµ±Ç°²½Ö趯×÷µÄËùʹÓõķ½·¨¡£¸Ã·½·¨Í¨³£Ö´ÐÐÒ»¸ö×´Ì¬×ªÒÆ£¬ÀýÈçµã»÷°´Å¥£¬»òÊÇÌá½»Ò»¸ö±íµ¥¡£×îºó£¬@Then±ê×¢ÁËÖ´ÐÐÑéÖ¤µÄ·½·¨¡£
ÔÚ±¾ÎÄÖУ¬ÎÒÃdzõʼÆô¶¯SeleniumµÄWebDriver£¬´ò¿ªÒ»¸ö¼àÌý8080¶Ë¿ÚµÄWeb·þÎñÆ÷µÄË÷ÒýÒ³Ãæ¡£ÎÒÃÇÈ»ºó¼ì²éWebÒ³ÃæÊÇ·ñÒѾ´ò¿ª£¨OpenLandingPage²½Ö裩¡£
OpenLandingPage²½ÖèÖ®ºóÊÇLogin²½Öè¡£´úÂëÈçÏ£º
@Step(OpenLandingPage.class)
public interface Login {
public class SuccessfulLogin implements Login
{
@Supplies
private String username = "anne";
@Supplies
private String password = "other";
@Demands
private WebDriver webDriver;
@When
public void when() {
enterText(webDriver, "[test-field-username]",
username);
enterText(webDriver, "[test-field-password]",
password);
click(webDriver, "[test-cta-signin]");
}
@Then
public void then() {
assertElementPresent(webDriver, "[test-form-challenge]");
}
}
@Terminator
public class FailedLogin implements Login {
@Supplies
private String username = "anne";
@Supplies
private String password = "mykey";
@Demands
private WebDriver webDriver;
@When
public void when() {
enterText(webDriver, "[test-field-username]",
username);
enterText(webDriver, "[test-field-password]",
"invalidpassword");
click(webDriver, "[test-cta-signin]");
}
@Then
public void then() {
assertElementPresent(webDriver, "[test-form-login]");
assertElementDisplayed(webDriver, "[test-dialog-authentication-failure]");
}
}
} |
´Ó´úÂëÖÐÊ×ÏÈӦעÒâµ½µÄÊÇ£¬ÎÒÃÇÏÖÔÚÌṩÁËÁ½¸öʵÏÖ½Ó¿ÚµÄÀà¡£ÔÚCascadeµÄÊõÓïÖУ¬³ÆLogin²½Öè¾ßÓÐÁ½¸ö¡°³¡¾°¡±£¨Scenario£©¡£Ò»¸ö³¡¾°Õë¶ÔLogin²½Öè³É¹¦£¬ÁíÒ»¸ö³¡¾°ÓÃÓÚLogin²½Öèʧ°Ü¡£
Æä´Î£¬ÎÒÃÇӦעÒâµÄÊÇ@Step±ê×¢¡£´úÂëÖж¨ÒåÁ˸÷²½Öè¼äµÄ½ÓÐø¹ØÏµ¡£´ÓÕâЩÐÅÏ¢µãÖУ¬ÎÒÃÇ¿ÉÒԺܺõØÁ˽âCascade×öÁËʲô¡£ËüɨÃèÁËÀàÖбê×¢@StepµÄÀà·¾¶£¨Classpath£©£¬½«Àà·¾¶Á¬½ÓÆðÀ´£¬¼ÓÈëµ½²âÊÔÖС£
ÏÂÃæ£¬¿ÉÒÔ¿´µ½ÓеIJ½ÖèÐèÒªÊý¾Ý¡£ÔÚ±¾ÀýÖУ¬¾ÍÊÇLogin²½ÖèÐèÒªSelenium WebdriverµÄÒ»¸öʵÀý£¬ÒÔ±ãÇý¶¯ä¯ÀÀÆ÷¡£
Èç¹ûÎÒÃÇ×ÐϸµØ²é¿´ÁËÿ¸ö¡°³¡¾°¡±Öиø³öµÄÖµ£¬¾ÍÄÜ×¢Òâµ½ÕâЩ³¡¾°ÎªÍ¬Ò»Óû§ÉèÖÃÁËÊý¾Ý¡£Èç¹ûÎÒÃǶÁÈ¡@When·½·¨µÄ¶¨Ò壬¾Í»á·¢ÏÖÏòä¯ÀÀÆ÷ÌṩµÄÃÜÂëÊÇÓëËùÖ´ÐеÄÌØ¶¨¡°³¡¾°¡±Ïà¹ØµÄ¡£»»¾ä»°Ëµ£¬FailedLogin¡°³¡¾°¡±ÊäÈëÁË´íÎóµÄÃÜÂë¡£
¿ÉÔ¤¼ûµÄÊÇ£¬@Then·½·¨»á¼ì²éÊÇ·ñ¿Éµ½´ï¸ø¶¨¡°³¡¾°¡±µÄÊʵ±WebÒ³Ãæ£¬·ñÔò¾Í¸ø³öÒ»¸ö³ö´í¶Ô»°¿ò¡£
×îºó£¬ÎÒÃÇ×¢Òâµ½@Terminator±ê×¢¡£¸Ã±ê×¢ÓÃÓÚ¸æÖªCascadeÔڸò½ÖèÖ®ºóûÓнÓÐøÈκβ½Öè¡£Òò´Ë£¬Î´Í¨¹ýÈÏÖ¤µÄ¹ý³Ì»áÔڴ˱ê×¢´¦ÖÕÖ¹¡£
ÎÒÔÚGitHubÉÏÌṩµÄÀý×Ó¸ø³öÁËÒ»¸öÀ©Õ¹µ½¸ü¸ß²ã¼¶µÄ¡°Âó̡±£¬»¶Ó²é¿´¡£
״̬»úµÄ½¨Ä£
µ½Ä¿Ç°ÎªÖ¹£¬ÎÒÃÇÒѾÍê³ÉÁ˲½ÖèÎļþµÄ±àд£¬²¢½«²½ÖèÎļþÁ¬½ÓÔÚÒ»Æð£¬ÊµÏÖÁËһЩ·Ç³£ÓÐȤµÄÊÂÇé¡£ÎÒÃDz»ÔÙ½öÊǾßÓÐһϵÁÐÃèÊö¹ý³ÌµÄ¶ÀÁ¢½Å±¾£¬¶øÊǾßÓÐÁËÒ»¸öÄ£ÐÍ¡£ÎÒÃǽ¨Ä£ÁËÒ»¸ö״̬»ú£¬²¢ÃèÊöÁ˸÷״̬¼äµÄ×ªÒÆÇé¿ö¡£
Ò»µ©ÎÒÃǽ¨Á¢ÁË״̬»úÄ£ÐÍ£¬Ê¹ÓÃËü¿ÉÒÔ×öºÜ¶àÓÐÒâ˼µÄÊÂÇ飬ÒòΪËüÊǸöÌìÉúÀöÖʵÄÊýѧϵͳ£¬¶ø·Ç½öÊÇһϵÁеĽű¾¡£
ʹÓÃ״̬»úÄ£ÐÍ£¬¿ÉÒÔÔÚ²âÊÔ±¨¸æÖÐÉú³Éͼ
Cascade½«Éú²ú״̬»úÒÔͼÐαíʾ¡£

ÎÒÃÇ¿ÉÒԲ鿴¡°Âó̡±ÖÐÈÎÒ»½×¶ÎµÄÊý¾ÝµÄ»ã×ÜÇé¿ö¡£Í¨¹ýµã»÷ͼÖжÔÓ¦µÄÁ´½Ó£¬ÎÒÃÇ¿ÉÒÔ¿´µ½ÈçÏÂͼËùʾµÄϸ½ÚÄÚÈÝ£º

Cascase¿ÉÒÔÑ¡ÔñÐÔµØÔËÐÐÌØ¶¨µÄ²âÊÔ»ò×é²âÊÔ
CascadeÔÊÐíÎÒÃÇÖ¸¶¨ÓÃÓÚ²âÊÔÉú³ÉÆ÷µÄ¹ýÂËÆ÷¡£¹ýÂËÆ÷½«¹ýÂ˵ô²»Æ¥ÅäÖ¸¶¨Ìõ¼þµÄ²âÊÔ¡£
@FilterTests
Predicate filter = and(
withStep(Portfolio.CurrentAccountOnly.class),
withStep(SetupStandingOrder.Setup
StandingOrderForLater.class)); |
Cascade¿ÉÒÔʹÓÃËã·¨×îС»¯²âÊÔ¼¯
ÕâÊÇCascadeµÄ×î´óÁÁµã£¬Ò²ÊÇÎÒ׫д±¾ÎĵÄÒâͼËùÔÚ¡£ÎÒÃÇ¿ÉÒÔʹÓÃËã·¨¼ÆËãÿ¸ö¡°³¡¾°¡±µÄ³öÏÖÆµ´Î£¬²¢Ê¹ÓøÃÐÅÏ¢Éú³É×îС»¯µÄ¹ý³Ì²âÊÔ¼¯£¬ÆäÖаüº¬Ã¿¸ö¡°³¡¾°¡±ÖÁÉÙ³öÏÖÒ»´Î¡£¸üºÃµÄÊÇ£¬ËùʹÓõÄËã·¨¿ÉÒÔ¸ø³öÿ¸ö¡°³¡¾°¡±µÄÏà¶ÔÖµ£¬¸ÃÐÅÏ¢¿ÉÓÃÓÚÆ½ºâ²âÊÔÖеġ°³¡¾°¡±¡£²âÊÔÈËÔ±²»ÔÙÐèҪͨ¹ý·ÖÎö²âÊÔ¼¯²ÅÄܼõÉÙ²âÊÔµÄÖ´ÐÐʱ¼ä¡£Cascade×Ô¶¯ÊµÏÖÁËÕâÒ»¹¦ÄÜ¡£
Cascade¿ÉÒÔÃüÃû¹ý³Ì²âÊÔ
Cascade½«ÎªÃ¿¸ö¹ý³ÌÉú³ÉÒ»¸öÃû×Ö¡£¸ÃÃû×ÖʹÓÃÁËÿ¸ö²½ÖèÔÚ²âÊÔ¼¯ÕûÌåÖгöÏÖµÄÏà¶ÔƵ´Î£¬ÓÃÓÚ¸ßÁÁָʾ¸÷¸ö¡°³¡¾°¡±¡£

Cascade¿ÉʹÓöàÖÖ·½·¨×îС»¯²âÊÔ¼¯
Cascade¿ÉÒÔ¶ÔËã·¨ÉÔ×÷¸ü¸Ä£¬ÒÔ¶àÖÖ·½Ê½×îС»¯²âÊÔ¼¯¡£×îС²âÊÔ¼¯²»½ö¿ÉÒÔÊÇÃæÏòËùÓеġ°³¡¾°¡±¸ø³ö£¬¶øÇÒ¿ÉÒÔÃæÏòËùÓеIJ½Ö裨»òת»»£©¸ø³ö¡£Ã¿¸ö²»Í¬µÄ¼¯ºÏÒÔ²»Í¬·½Ê½ÊµÏÖÁËÒ»¸öÍêÕûµÄ²âÊÔ£¬²¢Éú³ÉÁ˲»Í¬ÊýÁ¿µÄ²âÊÔ¡£Õâ·Ç³£ÊʺÏÓÚÑÌÎí²âÊԵȲâÊÔ¡£
Cascade¿ÉÒÔ¹Ø×¢²âÊԵĸ²¸ÇÇé¿ö
Cascade¿ÉÒÔ¼ÆËã²âÊÔ¼¯¶Ô²âÊÔÕûÌåµÄ¸²¸ÇÇé¿ö¡£ÕâÍêÈ«²»Í¬ÓÚ´«Í³µÄ´úÂ븲¸Ç±¨¸æ¡£
ÄÇôÎÒÃÇʧȥÁËʲô
ÎÒÃDz»ÔÙÐèÒªÇ××ÔÈ¥Ö±½Ó±àд²âÊԽű¾£¬²»ÔÙÐèÒªÏòϵͳÌá½»½Å±¾ºó²ÅÄÜÖªµÀ½Å±¾µÄÔËÐÐÇé¿ö¡£ÕâÊÇ·ñÐèÒª¸¶³ö¹ý¸ßµÄ´ú¼Û£¬Ôںܴó³Ì¶ÈÉÏÈ¡¾öÓÚCascadeÔÚʵ¼ùÖеĿÉÀí½âÐÔºÍÊÊÓ¦ÐÔ¡£CascadeµÄËù×÷ËùΪ¿ÉÄÜÔÚÒ»¿ªÊ¼¿´ÉÏÈ¥·Ç³£ÉñÆæ»òÆæ»Ã£¬µ«ÊÇËüËùÉú³ÉµÄ²âÊÔ±¨¸æ²»½ö½ö½â¾öÁ˵±Ç°µÄÎÊÌâ¡£¶øÇÒÄÜÒÔͼÐλ¯µÄ·½Ê½¶Ô״̬»ú½¨Ä££¬½ø¶øÌṩÁËÒ»Öֲ鿴ºÍ·ÖÎöϵͳµÄ·½Ê½£¬ÎÒ²¢²»ÈÏΪÔÚCascade³öÏÖ֮ǰ£¬ÕâЩ¹¦ÄÜÒ²ÄÜʵÏÖ¡£
×ܽá
ÔÚÍŶӸü´óʱ£¬ÏµÍ³²âÊԾͱä³ÉÁËÒ»¸ö¼èÄѵÄÎÊÌ⣬ÒòΪϵͳÖоßÓÐÁ˸ü¶àµÄ¹ý³Ì£¬²¢²ÉÓÃÁË΢·þÎñ¼Ü¹¹¡£ÈçºÎÍÆ½ø²âÊÔÔÚ±¾ÖÊÉϱä³ÉÁËÁíÒ»¸öåÄÒìµÄÎÊÌâ¡£Èç¹û²ÉÓõ¥Ôª²âÊÔ»·¾³£¬ÄÇôºÜ¶àÌØ¶¨µÄ¹¦Äܵ㽫ÎÞ·¨²âÊÔ¡£ÔÚ²âÊÔÖУ¬ÎÒÃÇÒ²»áÊÜÀ§ÓÚ´ú¼Û·Ç³£´óµÄÍøÂçµ÷Óᣳý·Ç½«¼¼ÊõÕ»¾ùÖÊ»¯²¢³éÏó³öÍøÂçµ÷Ó㬷ñÔòÎÒÃÇÎÞ·¨´ÓÕâЩÎÊÌâÖÐÍÑÉí¡£ÎÒÃÇÐèÒªÐµĹ¤¾ßÈ¥´¦ÀíÕâЩ״̬»ú¡£ÎÒÃÇÓ¦¸ÃÓúÃÕâЩÌìÉúÀöÖʵÄ״̬»ú¡£
|