Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
´úÂëÖÊÁ¿¹ÜÀíµÄ̽Ë÷ʵ¼ù£¨Ï£©
 
×÷ÕߣºÁÖ³¬
  1964  次浏览      27
 2021-7-27 
 
±à¼­ÍƼö:
±¾ÎÄÖ÷Òª½éÉÜÁ˵¥Ôª²âÊÔ¸²¸ÇÂÊ¡¢ÖÊÁ¿±¨¸æµÈ´úÂëÖÊÁ¿¹ÜÀíµÄ¹ý³Ì¡£
±¾ÎÄÀ´×ÔÓÚ½ð¿ÆÓÅÔ´»ã£¬ÓÉ»ðÁú¹ûÈí¼þAnna±à¼­¡¢ÍƼö¡£

±¾ÎĵÄÉÏÆª¡¶´úÂëÖÊÁ¿¹ÜÀíµÄ̽Ë÷ʵ¼ù£¨ÉÏ£©¡·

5¡¢ ¼ì²éµ¥Ôª²âÊÔ¸²¸ÇÂʵÄÏà¹Ø¼¼Êõ

µ¥Ôª²âÊÔ°¸ÀýдºÃÁË£¬ÈçºÎµÃµ½Ö´Ðи²¸ÇÂʱ¨¸æ£¿ÔçÆÚ£¬ÎÒÃÇʹÓõÄÊÇ maven-cobertura ²å¼þ£¬Ëüͨ¹ý¶Ô´úÂë±àÒëºóµÄ×Ö½ÚÂë×ö¡°´ò×®¡±´¦Àí£¬ÎªÃ¿ÐдúÂë¶¼¹ÒÉÏÒ»¸ö¼ÆÊýÆ÷£¬maven- surefire ²å¼þÖ´Ðе¥Ôª²âÊÔ´úÂëʱ£¬ÕâЩ¼ÆÊýÆ÷¾ÍÁôÏÂÁ˲âÊÔ´úÂëµÄ¡°½ÅÓ¡¡±£¬²âÊÔ½áÊøºó½«ÕâЩ¼ÆÊýÆ÷½øÐÐͳ¼Æ·ÖÎöµÃµ½µÄ±¨±í¾ÍÊǵ¥Ôª²âÊÔ¸²¸ÇÂʱ¨¸æÁË¡£

ͼ 9 ±» cobertura ´ò×®ºóµÄ Java ´úÂ루·´±àÒ룩

ͼ10 ij¸ö¹¤³ÌµÄµ¥Ôª²âÊÔ¸²¸ÇÂʸÅÀÀ

ͼ11 ij¶Î´úÂëµÄ¸²¸ÇÂÊÌáʾ

ÉÏͼÂÌÉ«²¿·Ö´ú±íÒѾ­²âÊÔ¸²¸ÇµÄ´úÂë£¬Ç°ÃæµÄÊý×Ö·Ö±ð´ú±íÐкźͲâ¹ýµÄ´ÎÊý£¬if ·ÖÖ§Ç°ÃæÒ²ÓÐÖ´ÐйýµÄ´ÎÊý£¬µ«Òò·ÖÖ§Ìõ¼þûÓÐÍêÈ«¸²¸ÇÖ»Äܱê¼ÇΪδ¸²¸ÇµÄºìÉ«¡£ÀàËÆµÄµ¥Ôª²âÊÔ¸²¸ÇÂʼì²é¹¤¾ßÒ²ºÜ¶à£¬±ÈÈç Emma£¨JaCoCo µÄǰÉí£©¡¢JMockit-cover µÈ¹¤¾ß¶¼ÌṩÁË Maven ²å¼þ£¬¿ÉÒÔ¸ù¾Ý¾ßÌåÖÊÁ¿¼ì²é»·¾³µÄÒªÇóÅäºÏʹÓã¬Í¬Ê± EmmaÌṩÁË Eclipse ²å¼þÖ§³Ö£¬¿ª·¢ÈËÔ±¿ÉÒÔ·½±ãµÄÔÚÔËÐÐ JUnit ºóÔÚ´úÂë´°¿Ú¿´µ½¸²¸ÇÂʽá¹û¡£

ͼ12 Emma ¸²¸ÇÂʹ¤¾ßÔÚ Eclipse ÖеÄЧ¹û

ÒÀÍи²¸ÇÂʱ¨¸æ²å¼þ£¬ÎÒÃǾͿÉÒÔ¶Ôµ¥Ôª²âÊÔÍê³ÉÇé¿ö½øÐÐͳ¼ÆÁË£¬ÕâЩ¹¤¾ß¿ÉÒÔÉú³É³öÖ±¹ÛµÄ´úÂëµ¥Ôª²âÊÔ¹¤×÷±¨¸æ¡£

ͨ³£¿ª·¢ÈËÔ±»áʹÓà Emma À´×ö±¾µØ¸²¸ÇÂʼì²é¹¤¾ß£¬ÒòΪËüÖ§³Ö Eclipse ²å¼þ·½Ê½ÔËÐУ¬ÄÇô·þÎñÆ÷ÉÏÈç¹ûÓà Cobertura À´Åܵ¥²â¸²¸ÇÂʾÍÓпÉÄܺͿª·¢ÈËÔ±±¾µØÅܵIJ»Ì«Ò»Ö£¬ÉõÖÁÓÐʱ Cobertura µÄ HTML ºÍ XML ±¨¸æÁ½ÖÖÐÎʽµÄ½á¹û»¹Äܲ»Ò»Ñù¡£ÏÖ½ñ£¬ÎÒÃǸüÍÆ¼öÔÚÖʼì·þÎñÆ÷ÉÏҲʹÓà JaCoCo Õâ¸ö¹¤¾ßÀ´½øÐе¥Ôª²âÊÔ¸²¸ÇÂʼì²é¡£

JaCoCo Óë Cobertura Ïà±ÈµÄÓÅÊÆ£º

1.Ö§³Ö JVM ´úÀíģʽ£¬¿ÉÒÔ¶¯Ì¬´ò×®£¨On-the-fly£©£¬²»ÒÀÀµ classpath£»

2.Ö§³Ö¶à´ÎÔËÐУ»

3.Ö§³Ö Java1.8£»

4.¿ÉÒÔºÍ Emma µÃµ½Í¬ÑùµÄ½á¹û£¨Õâµã¶Ô¿ª·¢ÈËÔ±ºÜÖØÒª£©¡£

ͼ13 JaCoCo ±¨¸æ

6¡¢ ȱÏÝ¿ìµÝ£¿ÈçºÎÈÿª·¢ÈËÔ±×î¿ìµÄ¿´µ½×îеı¨¸æ

¼øÓÚÎÒÃÇÔÚ¿ª·¢ÔÆÉϹ¤×÷£¬ÐÅÏ¢Ö»ÄÜÔÚÔÆÉÏÁ÷ת£¬µ«ÊÇÐèÒª½ÓÊÕ±¨¸æµÄÈ˶¼ÔÚÔÆÏ£¬¼°Ê±Í¨Öªµ½¸Ã½â¾öÎÊÌâµÄÈËÔòÐèÒªºÄ·ÑºÜ¶àÈËÁ¦×ÊÔ´²ÅÄÜÍê³É¡£ÇÒ²»ËµÒª°²ÅÅÈËÔ±¶¨Ê±ÊÕ¼¯Êý¾Ý·¢²¼ÖÊÁ¿±¨¸æµ½ espace ȺÀ»¹ÒªÒªÇ󿪷¢ÈËÔ±¹Ø×¢ÖÊÁ¿±¨¸æ£¬°²ÅŶ¨ÆÚ֪ͨÌáÐÑ£¬¸ã²»ºÃ»¹µÃÉÏ¿¼ºËÊֶΣ¬ÏëÒªËõ¶ÌÎÊÌâ½â¾öʱ¼äÐèҪͶÈëºÜ¶àµÄ×ÊÔ´¡£

ÄÇôÏûÏ¢ÄÜ·ñ´«µÝµÄ¸ü¿ì¡¢¸üÖ±½Ó£¿ÎÒÃÇ¿ÉÒÔÏëµ½µÄÊÇ£¬¿ª·¢ÈËÔ±ÈÕ³£¶¼ÊÇͨ¹ý EclipseÖ®ÀàµÄ IDE ½øÐпª·¢£¬Èç¹ûÄܽ«ÖÊÁ¿±¨¸æÍÆË͵½¿ª·¢½çÃæÉϲ»¾ÍºÃÁË£¬¼ÈÄܽÚÊ¡ÈËÁ¦ºÍ±¨¸æ´æ´¢×ÊÔ´£¬Ò²ÄÜËõ¶Ì·´À¡Â·¾¶£¬±£Ö¤×î¶ÌµÄʱ¼äÄÚ½«ÎÊÌâ·´À¡µ½´ó¼ÒÃæÇ°£¬Ó¦¸ÃÊǸöÒ»¾Ù¶àµÃµÄÊÂÇé¡£

ͼ14 ͨ¹ý P8 Tools ²å¼þ½« Jenkins ±¨¸æÓ³Éäµ½ Eclipse ¶ÔÓ¦µÄÏîÄ¿ÉÏ

Ê×ÏȽ« Jenkins Êä³öµÄ±¨¸æÉú³ÉΪ Json ¸ñʽ£¬È»ºóÔÚ Eclipse ÉÏʹÓÿª·¢¸¨Öú²å¼þ£¨ÎÒÃÇÊÖÀï¸ÕºÃÓиö P8 ¿ª·¢¹¤¾ß²å¼þ£©ºǫ́ˢÐÂÕâ¸ö±¨¸æ£¬Ò»µ©³ÖÐø¼¯³ÉÓÐеı¨¸æ²úÉú£¬Í¨¹ý¹¤³Ì»òÕß°üÊÓͼµÄչʾ¾ÍÄÜÍê³É¶Ô¿ª·¢ÈËÔ±µÄÏûÏ¢ËÍ´ïÁË¡£

½áºÏ Eclipse ±¾ÉíµÄÏîĿչÏÖ·½Ê½£¬¿ª·¢ÈËÔ±ÊÖÀïÔÚ¿ª·¢Äĸö²úÆ·£¬²å¼þ¾Í¿ÉÒÔ°ÑÄĸö²úÆ·µÄ±¨¸æ×´Ì¬Õ¹Ê¾³öÀ´£¬¾ÍºÃÏñ½«ºǫ́±¨¸æÖ±½ÓÍÆË͵½ÁËÕâ¸ö²úÆ·¶ÔÓ¦µÄ¿ª·¢ÈËÔ±ÃæÇ°¡£ÎÒÃÇ»¹×öÁËÐÅÏ¢¸ñʽµÄ¶¨Öƹ¦ÄÜ£¬¿ª·¢ÈËÔ±Ò²¿ÉÒÔÔÚÐÅÏ¢À¸¸ù¾Ý×Ô¼ºÏëÒª¿´µ½µÄ±¨¸æÐÅÏ¢½øÐж¨ÖÆÕ¹Ê¾¡£

ÀíÂÛÉÏ£¬ÎÒÃÇ¿ÉÒÔ½« Jenkins ÖÊÁ¿É¨Ãè³öµÄÎÊÌâºÍ¿ª·¢ÈËÔ±ÊÖÖиºÔðµÄ´úÂë½øÐм¼Êõ±È¶Ô²¢ÊµÊ±Õ¹Ê¾ÄÄЩ´úÂëÐÐÊÇÓÐÎÊÌâµÄ£¬Õâ±ÈÈÿª·¢ÈËԱȥ±¨¸æÖÐÕÒ×Ô¼º¸ºÔðµÄ´úÂë¸ü¾«×¼£¬¸ü±ã½Ý¡£ÕâÑù±ãͨ¹ýÁ˼¼Êõ·½Ê½¸øÃ¿Î»¿ª·¢ÈËÔ±Å䱸ÁËÒ»¸öרÊôµÄ¡°±¨¸æ²é¿´ÈË¡±£¬Ê±¿Ì½ô¶¢×Ô¼ºÔÚ¿ª·¢µÄÏîÄ¿±¨¸æÉ¨ÃèÇé¿ö£¬Ò»µ©³öÏÖÎÊÌâ¿ÉÒÔËæÊ±Á´½Óµ½ Jenkins Éϲ鿴ÎÊÌâ¡£

ͼ15 ÖÊÁ¿±¨¸æÍ¨¹ý P8 ¿ª·¢¹¤¾ß·´À¡ÔÚ Eclipse ״̬À¸µÄЧ¹û

7¡¢ ´ÓÖÊÁ¿±¨¸æµ½¿ª·¢Ö¸»Ó°ô

µ¥Ôª²âÊÔ±¨¸æ¡¢°²È«É¨Ã豨¸æ¡¢ÈÕ±¨¡¢Öܱ¨¡¢Í¶²ú±¨¸æ£¬ÓÐÁ˸÷ÖÖ¹¤¾ßÒÔ¼°ÕâЩ¹¤¾ß´øÀ´µÄÖÊÁ¿Êý¾Ý£¬ÈçºÎ½«ÕâЩ¼¼Êõ¹¤¾ßת»¯Îª¹ÜÀí¹¤¾ß£¬ÔÚÕâÀï·ÖÏíÁ½µã¾­Ñé¡£

µÚÒ»¸ö¾­Ñ飺ÎÊÌâ·¢Ïֵļ°Ê±ÐÔ±ÈÈ«ÃæÐÔºÍȨÍþÐÔ¸üÖØÒª

¡¤Ê×ÏÈ£¬Í¨¹ý¶Ô Jenkins µÄÅäÖÃÎÒÃÇÖð²½ÕûÀí¸÷ÖÖÖÊÁ¿¼ì²éµÄ»·¾³ÒÀÀµ¹ØÏµ£¬ÈÎÎñÀïÔö¼Ó½Å±¾·ÖÎö´úÂë±ä¸üµÄÔ­Òò¡£±ÈÈ磬µ±µ¥Ôª²âÊÔ´úÂëÌύʱ£¬²»Ó°ÏìÓÐЧ´úÂ룬ֻÐè´¥·¢µ¥Ôª²âÊÔ£¬¾ÍÖ»½øÐи²¸ÇÂʼì²é£»µ±¹¦ÄÜ´úÂ루main£©Ìύʱ£¬ÔòÒª½øÐÐÈ«Ãæ¼ì²é£¬È·ÈÏÊÇ·ñ²úÉúÁËÐÂȱÏÝ£¬ÕâÑù¾Í±ÜÃâÁË´óÁ¿²»±ØÒªµÄÖØ¸´¼ì²é£¬½ÚÔ¼ÁËϵͳ×ÊÔ´¡£

ͼ16 ÎÒËù³£ÓõIJúÆ·ÖÊÁ¿¼ì²éÈÎÎñÁ÷³Ìͼ

¡¤Æä´Î£¬¶¨Ê± PollSCM »ñÈ¡°æ±¾×´Ì¬£¬·¢ÏÖ±ä¸üÁ¢¼´ÌáÈ¡°æ±¾ºÍ±ä¸üÇé¿ö£¬½øÐбàÒë¼ì²é£¬´¥·¢ÏàÓ¦µÄ²úÆ·¼ì²éÈÎÎñ¡£

¡¤µÚÈý£¬ÔÚ¶ÀÁ¢µÄÈÎÎñÖнøÐи÷Ïî×ÓÈÎÎñ£¬²»ÔÚÒ»¸ö´óÁ÷Ë®ÏßÀï×öºÜ¶àµÄÊÂÇ飬½µµÍÖÊÁ¿ÈÎÎñÒÀÀµ£¬±ÜÃâµÈ´ý¡£

¡¤µÚËÄ£¬Èº¼¯¹ÜÀí£¬ÔÚ¶àÊý·þÎñÆ÷ÉÏÅäÖû·¾³ÒÀÀµ½ÏµÍµÄÏàͬ¹¤¾ß£¬±ÈÈç±àÒë¼ì²é£¬Èà Jenkins ·ÖÅä×ÊÔ´£¬ÔÚרÓ÷þÎñÆ÷ÉÏÅäÖû·¾³ÒÀÀµ½Ï¸ßµÄ¹¤¾ß£¬ÅäÖÃÊØºòÈÎÎñ£¬±ÈÈç Fortify ¼ì²é¡£

¡¤µÚÎ壬ÊÕ¼¯¸÷ÖÖÖÊÁ¿¼ì²é½á¹û£¬ÐγɲúÆ·ÖÊÁ¿Ô­Ê¼Êý¾Ý±¨¸æ£¬·½±ãµ¥¶À²é¿´¡£

¡¤µÚÁù£¬Í¨¹ýÈÎÎñ¼äÒÀÀµ¹ØÏµ£¬Ö÷¶¯´¥·¢ÏÂÓÎÖÊÁ¿¼ì²é¹¤×÷½øÐС£

¡¤µÚÆß£¬ÉèÖö¨ÆÚÖ´ÐÐÈÎÎñ£¬È·±£´úÂëµÄ³ÖÐø½¡¿µÐÔ£¬Õâµã¶ÔÓڷdz£¹æÐèÇó²úÆ·ÓÈÎªÖØÒª£¬Äܼ°Ê±·¢ÏÖÍâΧ±ä¸ü£¨ÀýÈ磬¿ò¼ÜÉý¼¶£¬»·¾³ÅäÖñ仯£©ÒýÆðµÄÎÊÌ⣬½¨Òé×¼ä¸ôÖÜÆÚΪ¡°ÖÜ¡±£¬Ò²¾ÍÊÇÿÖÜËùÓвúÆ·¶¼±ØÐë¹ý¼ñÒ»´Î¡£

ͼ17 Jenkins ÖÐij¸öÖÊÁ¿ÈÎÎñµÄ×ÜÀ¿ÊÓͼ¼°±¨±í

µÚ¶þ¸ö¾­Ñ飺¿ª·¢ÈËÔ±Äܹ»Àí½âµÄÖ¸Áî±È¿ÝÔïµÄÎÊÌâÊýÁ¿¸üÎªÖØÒª

Ò½ÔºÌå¼ì±¨¸æÉϵÄÊý¾Ý´ó¶àÊýÈ˶¼ÊÇ¿´²»¶®µÄ£¬µ«ÊÇÒ½Éú¿ÉÒÔ£¬Ò½Éúͨ¹ýרҵµÄ·ÖÎö£¬Í¨Ë×Ò×¶®µÄ½âÊÍ£¬²¡È˲ÅÄܹ»Àí½â²¡Çé¡£ÖÊÁ¿Êý¾Ý²»¼Ó¹¤²»ÕûºÏ£¬²»×öÈËÐÔ»¯µÄչʾҲ¾ÍÊÇÒ»¶Ñ¿ÝÔïµÄÊý¾Ý¶øÒÑ£¬¹ÜÀíÍŶÓͶÈë´óÁ¿×ÊÔ´ÌṩÁË·×·±¸´Ôӵı¨¸æ£¬¿ª·¢ÍŶӻ¹Òª»¨·Ñ¸ü¶àµÄʱ¼äºÍÈËÁ¦È¥Ó¦¶ÔÕâЩ±¨¸æ£¬ÊÇÖÖË«ÊäµÄ½á¹û¡£

ÈçºÎÈÃÖÊÁ¿Êý¾Ý·¢»Ó×î´óµÄDZÄÜ£¿ÎÒÃǵÄ×ö·¨ÊÇÈà Jenkins ºÍ¸÷ÖÖ¹¤¾ß½øÐбê×¼»¯Êý¾ÝÊä³ö£¬¾¡Á¿½«²»Í¬ÐÎʽµÄ±¨¸æÊä³ö³É±ê×¼µÄÑùʽ£¬½µµÍ¿ª·¢ÈËԱѧϰ³É±¾¡£È»ºóʹÓÃÍⲿ¹¤¾ß½øÐÐÊý¾ÝÊÕ¼¯£¬¼ÓÒÔÊý¾Ý͸ÊÓͼ¡¢Êý¾Ý×ÖµäµÈÐÅÏ¢¸¨Öú£¬ÔÙͨ¹ý²»Í¬µÄÊý¾ÝչʾÉè¼ÆµÃµ½ÖÊÁ¿¹ÜÀíÐèÒªµÄ±¨¸æ¡£

Êý¾ÝÊÇ¿ÝÔïµÄ£¬Ò²ÊÇÄÜ˵»°µÄ£¬Òª¿´ÄãÈ¥ÔõôչÏÖ¡£±ÈÈ磬ÎÒÃÇÏ£ÍûÔÚij¸öʱ¼ä¶Î¿ìËÙÌáÉýµ¥Ôª²âÊÔ¸²¸ÇÂÊ£¬ÄÇôÎÒ¾ÍʹÓõ¥Ôª²âÊÔÌáÉý¶ÈÇ÷ÊÆ£¬ÖÜ¡¢Ô¡¢¼¾¶ÈÌáÉýÊýÁ¿£¬À´·´Ó³¼Æ»®ÓëÖ´ÐÐÖ®¼äµÄ²îÒì¡£Ôö¼Ó¸÷¿ª·¢×éÖ®¼äµÄÊý¾Ý¶Ô±È¹ØÏµ£¬Í»³ö¹¤×÷Ч¹û²îÒ죬´Ù³É¾ºÕùЧӦ¡£ÎÒÃÇ»áÔÚ¸÷ÖÖ±¨¸æÖÐÓÃÑÕÉ«¡¢¼ýÍ·µÈ±êʶָ³ö¹¤×÷Ä¿±ê£¬¶¨ÆÚ·¢Ë͵½¿ª·¢ÈºÀï»ò¿ª·¢½çÃæÉÏ£¬Ï£ÍûÒýÆð¿ª·¢ÈËÔ±µÄ×¢Ò⣬ÔÙ¼ÓÉÏһЩ¹ÄÀøºÍ³Í·£»úÖÆ£¬ÈÃÕâЩÊý¾Ý×÷Ϊ¿ª·¢¹¤×÷µÄÖ¸»Ó°ô£¬Ö¸µ¼´ó¼Ò¿ªÕ¹ÖÊÁ¿ÌáÉý¹¤×÷¡£

ͼ18 µ¥Ôª²âÊÔ¸²¸ÇÂÊ»ã×Ü

ͼ19 ×éºÏºóµÄÖÊÁ¿±¨¸æ

ͼ20 µ¥Ôª²âÊԼƻ®Íê³ÉÇé¿ö±¨¸æ

×÷ΪÖÊÁ¿¹ÜÀíÕߣ¬»¹ÓÐһЩ¹¤×÷ÊDz»ÄܺöÊӵģº±ÈÈç˵£¬ÖÊÁ¿Ç÷ÊÆ·ÖÎö£¬ÔÚÒ»¶Î¿¼ºËÖÜÆÚÄÚ£¬ÖÊÁ¿ÊÇ·ñÏò¸üºÃ·½Ïò·¢Õ¹£¬·¢Õ¹µÄËÙ¶ÈÈçºÎ£¿ÄÄЩ´úÂëÒ׳öÏÖÎÊÌ⣬ÄÄЩÎÊÌâÊǹ²ÐÔÎÊÌâ¸÷×é¶¼ÓгöÏÖ£¬¾ßÌåµã˵¾ÍÊǹ²ÐÔ·ÖÎöºÍ²îÒì·ÖÎö£¬ÔÙ±ÈÈç˵¿ª·¢ÈËÔ±µÄ¹¤×÷ЧÂÊ¡£ÕâЩ¿ÉÄܾÍÐèÒª×ö´úÂëÖÊÁ¿¹ÜÀíµÄÈËԱͨ¹ýÒ»¶¨µÄÊý¾ÝÀÛ»ýºÍ»ùÓÚ¾­ÑéµÄÊý¾Ý·ÖÎöÁË£¬ÒªÃæ¶ÔÃæºÍ´ó¼Ò½âÊÍÇå³þ£¬´úÂë¹ÜÀíÕßÕâʱºò³Ðµ£µÄ¾ÍÊǽ¡Éí½ÌÁ·µÄ½ÇÉ«£¬Òª¸æËß´ó¼Ò¿ª·¢Ï°¹ßÄÄÀï²»ºÃ£¬ÓÅÏÈ×öÄÄЩµ÷ÕûЧ¹û»á¸üºÃ¡£

ÏÖÔÚÒ²ÓÐЩÖÊÁ¿¹¤¾ßƽ̨ÄÜ×öµ½Ò»²¿·ÖÇ÷ÊÆ·ÖÎö£¬±ÈÈç SonarQube¡£

ͼ21 ij²úÆ·µÄ SonarQube ±¨¸æ

´úÂëÖÊÁ¿¹ÜÀíÆ½Ì¨SonarQube

SonarQube ÊÇÒ»¸ö¿ªÔ´Æ½Ì¨£¬ÓÃÓÚ¹ÜÀíÔ´´úÂëµÄÖÊÁ¿¡£SonarQube ²»Ö»ÊÇÒ»¸öÖÊÁ¿Êý¾Ý±¨¸æ¹¤¾ß£¬¸üÊÇ´úÂëÖÊÁ¿¹ÜÀíÆ½Ì¨¡£Ö§³ÖµÄÓïÑÔ°üÀ¨£ºJava¡¢PHP¡¢C#¡¢C¡¢Cobol¡¢PL/SQL¡¢Flex µÈ¡£Ö÷ÒªÌØµã£º

¡¤´úÂ븲¸Ç£ºÍ¨¹ýµ¥Ôª²âÊÔ£¬½«»áÏÔʾÄÄÐдúÂë±»Ö´ÐÐ

¡¤¸ÄÉÆ±àÂë¹æÔò

¡¤ËÑѰ±àÂë¹æÔò£º°´ÕÕÃû×Ö£¬²å¼þ£¬¼¤»î¼¶±ðºÍÀà±ð½øÐвéѯ

¡¤ÏîÄ¿ËÑѰ£º°´ÕÕÏîÄ¿µÄÃû×Ö½øÐвéѯ

¡¤¶Ô±ÈÊý¾Ý£º±È½ÏͬһÕűíÖеÄÈκβâÁ¿µÄÇ÷ÊÆ

SonarQube ½«×÷Ϊ×Ô¶¯»¯µ¥Ôª²âÊÔ·´À¡±¨¸æÍ³Ò»Õ¹ÏÖÆ½Ì¨£¬°üÀ¨£ºµ¥Ôª²âÊÔ¸²¸ÇÂÊ¡¢³É¹¦ÂÊ¡¢´úÂë×¢ÊÍ¡¢´úÂ븴ÔӶȵȶÈÁ¿Êý¾ÝµÄÕ¹ÏÖ¡£

ͼ22 SonarQube ÈÎÎñÁбíչʾ

SonarQube ²»ÍêÈ«ÄÜ×Ô¼ºÖ§³ÖÈ«²¿µÄÖÊÁ¿¼ì²é£¬ÒòΪËüµÄ²å¼þ»¹±È½ÏÉÙ£¬¿ÉÒÔͨ¹ý Jenkins ½øÐе÷¶È£¬È»ºó½«²âÊÔ½á¹ûÍÆË͵½ SonarQube Êý¾Ý¿âÖУ¬Ðγɻ¥²¹¹ØÏµ¡£

SonarQube ÌṩÁËÒ»Ì×»ùÓÚ»¥ÁªÍø¿ª·¢¾­ÑéµÄÎÊÌâÑÏÖØ³Ì¶ÈºÍÐÞ¸´³É±¾µÄÆÀ¹À£¬¿ÉÒÔΪÈí¼þÏîÄ¿½øÐÐÎÊÌâÐÞ¸´³É±¾µÄÆÀ¹ÀºÍÈí¼þÕûÌåÖÊÁ¿µÄÆÀ·Ö£¬¸¨ÖúÏîÄ¿¹ÜÀíÕß½øÐÐÖÊÁ¿¹ÜÀí¡£

8¡¢ ´úÂëÖÊÁ¿Ï¸»¯µ½ÈË£¬ÎÊÌâ²ÅÄܻص½Ô´Í·

´úÂëµÄÖÊÁ¿¹ÜÀí£¬»»¸ö½Ç¶È¿´Êǽ«ÈËÕâ¸ö¿ª·¢¹ý³ÌÖÐ×î´óµÄ²»È·¶¨ÒòËØ½øÐÐÁ¿»¯¹ÜÀí¡£

µ¥Ôª²âÊÔ¸²¸ÇÂÊÌåÏÖµÄÊÇ´úÂëÐеÄÓÐЧ²âÊÔÇé¿ö£¬¸÷ÖÖ¾²Ì¬É¨ÃèÌåÏÖÁËÄÄЩ´úÂëÐÐдµÄÓÐÎÊÌ⣬±àÒ뱨´í·µ»ØµÄÊÇ´íÎó³öÏÖÔÚÄÄÒ»ÐдúÂëÉÏ£¬Öʼ칤¾ßÄõ½µÄÊÇ´úÂ룬·´À¡µÄÎÊÌâλÖÃÒ²ÊÇ´úÂëÐС£ÒòΪûÓаѴúÂëºÍÈ˹ÒÉϹ³£¬¾Íû°ì·¨°ÑÎÊÌâÖ±½Ó·´Ó¦µ½¿ª·¢ÈËÔ±ÉíÉÏ£¬Ò²¾ÍÔì³ÉÁËÇ°ÃæËµµÄһЩ¹ÜÀíÀ§¾³¡£

´úÂëÉÏÓиöÌØ¶¨µÄ±êÇ©ÊÇ @author£¬JTest ¹¤¾ß±ã¿ÉÒÔ¶ÁÈ¡Õâ¸ö±êÇ©À´½øÐдúÂëµ½È˵Äת»»¡£µ« @author Ò²ÊÇ¿ª·¢ÈËԱдÉÏÈ¥µÄ£¬ºÜÄÑÈ·±£´úÂë×÷ÕßÐÅÏ¢µÄ׼ȷÐÔ¡£

ClearCase ºÍ Git ¶¼ÎªÎÒÃÇÌṩÁËÌá½»¼Ç¼£¬¿ÉÒÔÈÃÎÒÃǵõ½Ã¿Ò»ÐдúÂëµÄ×÷Õß¡£

ÎÒÃÇ¿ª·¢Á˼¸¸ö¹¤¾ß¶ÁÈ¡°æ±¾¹ÜÀí¹¤¾ßÀïÃæµÄ×÷ÕßÌá½»ÐÅÏ¢£¬Ìæ´ú @author ±êÇ©¸ø³ö´úÂëÐкͿª·¢ÕߵĶÔÓ¦¹ØÏµ£¬ÒÔ±ê×¼¸ñʽÊä³ö£¬·½±ã¸÷ÖÖ¹¤¾ß¸´Óá£

ͼ23 Git »ñÈ¡´úÂë×÷ÕߵĹؼü´úÂë

ͼ24 CC »ñÈ¡´úÂë×÷ÕߵĹؼü´úÂë

ͨ³££¬ÎÒÃǵĿª·¢¶¼ÊÇÒ԰汾Ϊ¼Æ»®µ¥Î»µÄ£¬µ«ÊÇÖÊÁ¿É¨ÃèÊÇÒÔÈ«Á¿´úÂëΪɨÃ跶ΧµÄ£¬²»ÄÜÒªÇóËùÓеŤ¾ß¶¼Ö§³ÖÔöÁ¿±¨¸æ£¬ÎÒÃÇÈçºÎ´ÓÈ«Á¿µÄÖÊÁ¿±¨¸æÀïɸѡ³öµ±Ç°°æ±¾µÄÊý¾Ý£¿ÌرðÊǵ¥Ôª²âÊÔ¸²¸ÇÂʼì²éÀÎÒÃÇÈçºÎÅжϵ±Ç°°æ±¾µÄ´úÂëÊDz»ÊǶ¼ÒѾ­Íê³ÉÁ˵¥Ôª²âÊÔ°¸ÀýµÄ±àд£¿¸ÃÌáÐÑË­£¬¸ÃÌáÉýÄÄЩ´úÂëÐеĸ²¸ÇÂÊ£¿Õâ¾ÍÏÈÒªµÃµ½°æ±¾±ä¸üµÄ׼ȷÐÅÏ¢¡£ºÃÔÚ ClearCase»ùÏ߱ȶԺÍGitµÄ git diff¶¼ÄÜÊä³ö°æ±¾²îÒìÊý¾Ý£¬ÔÙ¼ÓÉÏ×÷ÕßÐÅÏ¢¼Ó¹¤£¬ÎÒÃǾÍÄõ½Á˰汾±ä¸üºÍ×÷ÕßÇé¿öµÄÍêÕûÐÅÏ¢ÁË£¨ÏÂͼ£¬»ÆÉ«ÊDZä¸üλÖÃÐÅÏ¢£¬diff ¸ñʽ£©¡£

ͼ25 »ùÏ߱ȽϼÓ×÷ÕßÐÅÏ¢ÕûºÏµÄ½á¹û

ͼ26 °æ±¾ÎÊÌⱨ¸æºÍÕûÌåÖÊÁ¿±¨¸æµÄ¹ØÏµÍ¼

ÓÐÁ˰汾ά¶ÈµÄ±ä¸üÊý¾ÝÐÅÏ¢£¬ÔÙÓÃÕâ¸öÐÅÏ¢ºÍÈ«Á¿µÄÖÊÁ¿±¨¸æ×öÒ»¸ö½»¼¯Æ¥Å䣬´ó²¿·ÖµÄÖÊÁ¿¹¤¾ß¾Í¿ÉÒÔ×ö³öÔöÁ¿±¨¸æ£¬¼´°æ±¾ÐÂÔöÎÊÌâ·ÖÎö£¬²¢ÇÒ½«ÎÊÌâ¶ÔÓ¦µ½¾ßÌåµÄ¿ª·¢ÕßÉíÉÏÁË¡£ÒÔµ¥Ôª²âÊÔΪÀý£¬ÎÒÃDz»½öÄܸø³öµ±Ç°°æ±¾²úÆ·µÄ±ä¸üÇé¿öºÍÓÐЧ´úÂ븲¸ÇÇé¿ö£¬»¹ÓдúÂëδ¸²¸ÇµÄÃ÷ϸÊý¾Ý¡£

ͼ27 µ¥Ôª²âÊÔ¸²¸ÇÂʲúÆ·ºÍ¿ª·¢Õßͳ¼ÆÐ§¹û

ÎÒÃÇÊÖÀïÒѾ­ÓÐÁ˹¤³Ì¼¶¡¢ÏîÄ¿¼¶¡¢Îļþ¼¶¡¢´úÂëÐм¶µÄÖÊÁ¿±¨¸æ£¬ÏÖÔÚÓÖ½«ÕâЩÊý¾Ý¹éÊôµ½ÈË£¬µÃµ½×÷Õß¼¶µÄÖÊÁ¿±¨¸æ¡£Ëü¿ÉÒÔΪÿһÃû¿ª·¢ÕßÌṩ׼ȷµÄÖÊÁ¿¹¤×÷Ö¸Òý£¬ÏîÄ¿¹ÜÀíÕßÒ²µÃµ½ÁËÒ»·Ý¿ª·¢Õßά¶ÈµÄ²ú³öÇé¿öºÍÎÊÌâÇé¿ö±¨¸æ¡£¿ª·¢Õß²»ÔÙÐèÒªÔÚ¸÷ÖÖ±¨¸æÖз­¿´ÊDz»ÊÇÓÐ×Ô¼ºËùϽµÄ´úÂëÎÊÌ⣬ֻÐèÒª¿´ÓÐûÓÐ×Ô¼ºµÄÃû×Ö¡£ÎÒÃÇ»¹¿ÉÒÔͨ¹ýÓʼþ»ò¼´Ê±Í¨Ñ¶¹¤¾ß½«ÎÊÌâÖ±½ÓÍÆË͸øÏà¹ØÈËÔ±£¬½ÚÔ¼ÁËÎÊÌâ·ÖÅäµÄ³É±¾¡£

ÔÙ½øÒ»²½ÉèÏ룬ÎÒÃÇÒѾ­Äܹ»´òͨ×÷Õß¡¢°æ±¾ºÍȱÏݵÄÁ´½Ó£¬Èç¹ûÄÜÔÚÕâ¸öÁ´ÉÏÔÙÔö¼ÓÏîÄ¿µÄÐèÇóÏî»ò²âÊÔ°¸ÀýµÈÆäËûÐÅÏ¢£¬ÊDz»ÊǾÍÓпÉÄܽ«È«ÉúÃüÖÜÆÚÐÅϢȫ²¿¹ØÁªÆðÀ´£¬´Ó¶øÎª¾«Ï¸»¯µÄÏîÄ¿¹ÜÀíÌṩ¿É¿¿µÄÊý¾ÝÖ§³Ö¡£¿ÉÄÜÒ²¾Í²»ÔÙÐèÒª¸÷ÖÖÊý¾Ý±¨ËͺÍÇé¿öÊÕ¼¯ÁË¡£

9¡¢ ×îºó

ÕûÌ×ÖÊÁ¿¹ÜÀíÌåϵµÄÖØµãÔÚÓÚÈ·±£ÖÊÁ¿¹ÜÀíµÄÓÐЧʵʩ£¬¿ÉÒÔÌáǰ·¢ÏÖ·çÏÕÎÊÌâ¡¢ÊÍ·ÅʵʩѹÁ¦£¬¸Ä±äÒÔÍùûÓпÆÑ§ÓÐЧµÄ¹¤¾ßºÍ¼à¹Ü·½·¨£¬½ö¿¿¿ª·¢ÈËÔ±¾­ÑéºÍ̬¶ÈµÄ¹ÜÀíģʽ¡£ÎÒÃǵÄËßÇóÊDz»ÐèÒª¿ª·¢ÈËÔ±¹ý¶àµÄ¹Ø×¢ÖÊÁ¿¹¤¾ßµÄ¼¼Êõϸ½Ú£¬Ö»Òª²ÎÓëÆäÖа´ÕÕ±¨¸æÒªÇóÖ¸ÒýÈ¥¹¤×÷±ãÄÜÏíÊÜËüËù´øÀ´µÄЧ¹û¡£Í¨¹ý¸úËæÍŶӴúÂëÖÊÁ¿¹ÜÀíµÄ¹ý³Ì£¬±ä±»¶¯ÖÊÁ¿¹Ü¿ØÎªÖ÷¶¯ÖÊÁ¿ÒâʶÌáÉý¡£

   
1964 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]
 
×îÐÂÎÄÕÂ
´úÂëÕû½à vs ´úÂë°¹Ôà
´úÂëÉó¼Æ--Ô´´úÂëÉó¼ÆË¼Â·
´úÂëÉó¼ÆË¼Â·
´úÂëÖØ¹¹Ö®µÀ
clean code´úÂëÕû½à
×îпγÌ
Éè¼ÆÄ£Ê½Ô­ÀíÓëÓ¦ÓÃ
´ÓÐèÇó¹ý¶Éµ½Éè¼Æ
Èí¼þÉè¼ÆÔ­ÀíÓëʵ¼ù
ÈçºÎ±àд¸ßÖÊÁ¿´úÂë
µ¥Ôª²âÊÔ¡¢Öع¹¼°³ÖÐø¼¯³É
³É¹¦°¸Àý
ijÆóÒµ »ùÓÚIPDµÄǶÈëʽÈí¼þ¿ª·¢
ijÆóÒµ ×ÔÎÒÈÏÖª¡¢ÇéÐ÷¹ÜÀíºÍ¹µÍ¨
ijÆóÒµ ˼άµ¼Í¼·½·¨Óëʵ¼ù
ÖÐÊ¢Òæ»ª ׿Խ¹ÜÀíÕß±ØÐë¾ß±¸µÄÎåÏîÄÜ
ÊÀ¼Í¸ßͨ ´´Ð´´ÔìÍ»ÆÆÐÔ²úÆ·¡ª¡ªÌåϵ