سؤال

مرحباً أيها السيدات والسادة،

لدينا مشروع كبير جدًا مع إطار بناء خاص بنا، يعتمد في الغالب على Java (على الرغم من وجود لغات أخرى).

نود استخدام البرنامج الإضافي Sonar Hudson لتقديم مقاييس الكود المختلفة بيانيًا.كيف نفعل ذلك؟

هل نحتاج إلى تغيير هيكل المشروع وإحضاره إلى المخضرم أم أن هناك حل بديل لتحديد مكان الحصول على نتائج الاختبار والتحف الأخرى؟

شكرًا لك

هل كانت مفيدة؟

المحلول

الطريقة التي نستخدمها هي التالية:

  • قمنا ببناء ملف إنشاء pom.xml مخصص خاص بالسونار (نحن نستخدم ant لأغراض بناء أخرى)
  • كل ما عليه فعله هو إجراء الاختبار بشكل جيد، لذلك يتم تحديد مراجع التبعية المشفرة باستخدام

    <scope>system</scope>
    
  • لم نغير بنية المشروع لـ maven، يمكنك التحديد في أدلة الموارد المخصصة والاختبار والموارد الخاصة بـ maven (طالما أن لديك دليل src ودليل اختبار واحد فقط)

  • الأمر المستخدم في CI هو

    mvn clean compile sonar:sonar
    

نحن نستخدم Continuum لجزء CI، ولكن يجب أن يعمل أيضًا في Hudson.

لم تغير هذه الطريقة أي عناصر بناء أخرى، بل تم تصميمها خصيصًا للسونار.ولكنه يفتح الطريق لبناء التكامل المستمر (اليومي)، أو لاستخدام maven كأداة بناء.تشبه هذه الطريقة "وضع ضوء السونار" الموصوف هنا

مزيد من المعلومات هنا:

نصائح أخرى

ويمكنك استخدام السونار دون مخضرم. لديك فقط ليقولوا ذلك حيث الملفات rport هي مع خصائص: sonar.cobertura.reportPath، sonar.clover.reportPath، sonar.surefire.reportsPath ...

وانظر هنا: http://sonar.codehaus.org/tag/ant/

وهناك مربع التجزئة لتعيين هذه القيم عند تكوين البناء في هدسون - يطلق عليه "التحقق إذا لم يتم بناء هذا المشروع مع maven2"

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top