تصدير نتائج الاختبار من Azure Load Testing للاستخدام في أدوات الجهات الخارجية

في هذه المقالة، ستتعلم كيفية تصدير نتائج وتقارير اختبار تحميل Azure. يمكنك تنزيل النتائج باستخدام مدخل Microsoft Azure، أو كأداة في سير عمل CI/CD، أو في JMeter باستخدام وحدة استماع خلفية، أو عن طريق نسخ النتائج من حساب تخزين Azure. يمكنك استخدام هذه النتائج لإعداد التقارير في أدوات الجهات الخارجية أو لتشخيص حالات فشل الاختبار. يقوم Azure Load Testing بإنشاء نتائج الاختبار بتنسيق ملف قيم مفصولة بفواصل (CSV)، ويوفر تفاصيل كل طلب تطبيق لاختبار التحميل.

يمكنك أيضا استخدام نتائج الاختبار لتشخيص الأخطاء أثناء اختبار التحميل. responseCode تمنحك الحقول و responseMessage مزيدا من المعلومات حول الطلبات الفاشلة. لمزيد من المعلومات حول التحقق من الأخطاء، راجع تشخيص اختبارات التحميل الفاشلة.

يمكنك إنشاء لوحة معلومات Apache JMeter من ملف سجل CSV باتباع الخطوات المذكورة هنا.

يمكنك أيضا تنزيل لوحة معلومات نتيجة اختبار تحميل Azure كتقرير HTML للعرض والتعاون دون اتصال.

المتطلبات الأساسية

  • حساب Azure مع اشتراك نشط. في حال لم يكن لديك اشتراك Azure، فأنشئ حساباً مجانيّاً قبل البدء.
  • مورد اختبار تحميل Azure الذي يحتوي على تشغيل اختبار مكتمل. إذا كنت بحاجة إلى إنشاء مورد اختبار تحميل Azure، فشاهد إنشاء اختبار تحميل وتشغيله.

تنسيق ملف نتائج الاختبار

ينشئ Azure Load Testing ملف CSV لنتائج الاختبار لكل مثيل محرك اختبار. تعرف على كيفية توسيع نطاق اختبار التحميل.

يستخدم Azure Load Testing تنسيق سجل Apache JMeter CSV. لمزيد من المعلومات حول الحقول المختلفة، راجع مسرد JMeter في وثائق Apache JMeter.

يمكنك العثور على تفاصيل كل طلب تطبيق لتشغيل اختبار التحميل في ملف نتائج الاختبار. تعرض القصاصة البرمجية التالية نتيجة اختبار نموذجية:

timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,URL,Latency,IdleTime,Connect
1676040230680,104,Homepage,200,OK,172.18.33.7-Thread Group 1-5,text,true,,1607,133,5,5,https://www.example.com/,104,0,100
1676040230681,101,Homepage,200,OK,172.18.33.7-Thread Group 1-3,text,true,,1591,133,5,5,https://www.example.com/,101,0,93
1676040230680,101,Homepage,200,OK,172.18.33.7-Thread Group 1-1,text,true,,1591,133,5,5,https://www.example.com/,98,0,94

الوصول إلى نتائج اختبار التحميل والتقرير وتنزيله

بعد انتهاء تشغيل اختبار التحميل، يمكنك الوصول إلى نتائج اختبار التحميل وتقرير HTML وتنزيلها من خلال مدخل Microsoft Azure، أو كأداة في سير عمل CI/CD.

هام

بالنسبة لاختبارات التحميل مع أكثر من 45 مثيل محرك أو مدة تشغيل اختبار أكبر من 3 ساعات، لا يتوفر ملف النتائج للتنزيل. يمكنك تكوين JMeter Backend Listener لتصدير النتائج إلى مخزن بيانات من اختيارك أو نسخ النتائج من حاوية حساب تخزين. بالنسبة للاختبارات التي تحتوي على عينات أكبر من 30، سيكون لتقرير HTML الذي تم تنزيله رسوم بيانية للبيانات المجمعة على جميع عينات العينات فقط. لن تعرض الرسوم البيانية بيانات نموذجية. بالإضافة إلى ذلك، لن يعرض التقرير الذي تم تنزيله سوى الرسوم البيانية المقابلة للمقاييس من جانب العميل.

لتنزيل نتائج الاختبار وتقرير HTML لتشغيل اختبار في مدخل Microsoft Azure:

  1. في مدخل Microsoft Azure، انتقل إلى مورد اختبار تحميل Azure.

  2. في الجزء الأيمن، حدد Tests لعرض قائمة الاختبارات، ثم حدد اختبارك.

    لقطة شاشة تعرض قائمة الاختبارات لمورد Azure Load Testing.

    تلميح

    للحد من عدد الاختبارات التي يجب عرضها في القائمة، يمكنك استخدام مربع البحث وعامل تصفية النطاق الزمني.

  3. يمكنك تنزيل ملف نتائج الاختبار كمجلد مضغوط بأي من طريقتين:

    • حدد علامة الحذف (...) بجوار تشغيل اختبار التحميل الذي تعمل عليه، ثم حدد تنزيل ملف النتائج.

      لقطة شاشة توضح كيفية تنزيل ملف النتائج لتشغيل اختبار التحميل.

      إشعار

      يجب أن يكون تشغيل اختبار التحميل حالة تم أو متوقف أو فاشل لملف النتائج ليكون متوفرا للتنزيل.

    • حدد Download في جزء Test run details . لتنزيل النتائج، حدد النتائج. لتنزيل تقرير HTML، حدد تقرير.

      لقطة شاشة توضح كيفية تنزيل نتائج الاختبار من جزء

  4. يمكنك استخدام أي أداة مضغوطة لاستخراج المجلد والوصول إلى الملفات التي تم تنزيلها.

    لقطة شاشة تعرض ملف zip لنتائج الاختبار في قائمة التنزيلات.

    يحتوي مجلد النتائج على ملف CSV منفصل لكل محرك اختبار ويحتوي على تفاصيل الطلبات التي نفذها محرك الاختبار أثناء اختبار التحميل.

    يحتوي مجلد التقرير على ملف HTML يوفر ملخصا لتشغيل الاختبار والرسوم البيانية لمقاييس الأداء للعرض والتعاون دون اتصال.

تصدير نتائج الاختبار باستخدام مستمعي الواجهة الخلفية JMeter

يمكنك استخدام وحدة إصغاء خلفية JMeter لتصدير نتائج الاختبار إلى قواعد بيانات مثل InfluxDB أو MySQL أو أدوات المراقبة مثل Azure Application Insights.

يمكنك استخدام وحدات الاستماع الافتراضية لواجهة JMeter الخلفية أو وحدات الاستماع الخلفية من jmeter-plugins.org أو وحدة استماع خلفية مخصصة في شكل ملف أرشيف Java (JAR).

يوضح مقتطف التعليمات البرمجية التالي مثالا على كيفية استخدام وحدة الإصغاء الخلفية ل Azure Application Insights، في ملف JMeter (JMX):

<BackendListener guiclass="BackendListenerGui" testclass="BackendListener" testname="Backend Listener" enabled="true">
  <elementProp name="arguments" elementType="Arguments" guiclass="ArgumentsPanel" testclass="Arguments" enabled="true">
    <collectionProp name="Arguments.arguments">
      <elementProp name="testName" elementType="Argument">
        <stringProp name="Argument.name">testName</stringProp>
        <stringProp name="Argument.value">jmeter</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="connectionString" elementType="Argument">
        <stringProp name="Argument.name">connectionString</stringProp>
        <stringProp name="Argument.value">Enter your AppInsights connection string</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="liveMetrics" elementType="Argument">
        <stringProp name="Argument.name">liveMetrics</stringProp>
        <stringProp name="Argument.value">true</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="samplersList" elementType="Argument">
        <stringProp name="Argument.name">samplersList</stringProp>
        <stringProp name="Argument.value"></stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="useRegexForSamplerList" elementType="Argument">
        <stringProp name="Argument.name">useRegexForSamplerList</stringProp>
        <stringProp name="Argument.value">false</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="logResponseData" elementType="Argument">
        <stringProp name="Argument.name">logResponseData</stringProp>
        <stringProp name="Argument.value">OnFailure</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
      <elementProp name="logSampleData" elementType="Argument">
        <stringProp name="Argument.name">logSampleData</stringProp>
        <stringProp name="Argument.value">OnFailure</stringProp>
        <stringProp name="Argument.metadata">=</stringProp>
      </elementProp>
    </collectionProp>
  </elementProp>
  <stringProp name="classname">io.github.adrianmo.jmeter.backendlistener.azure.AzureBackendClient</stringProp>
</BackendListener>

يمكنك تنزيل المثال الكامل لاستخدام وحدة الإصغاء الخلفية ل Azure Application Insights.

نسخ البيانات الاصطناعية للاختبار من حاوية حساب تخزين

هام

يتم تمكين نسخ البيانات الاصطناعية للاختبار من حاوية حساب تخزين فقط لاختبارات التحميل مع أكثر من 45 مثيل محرك أو مع مدة تشغيل اختبار أكبر من ثلاث ساعات.

لنسخ نتائج الاختبار وملفات السجل لتشغيل اختبار من حساب تخزين، في مدخل Microsoft Azure:

  1. في مدخل Microsoft Azure، انتقل إلى مورد اختبار تحميل Azure.

  2. في الجزء الأيمن، حدد Tests لعرض قائمة الاختبارات، ثم حدد اختبارك.

    لقطة شاشة تعرض قائمة الاختبارات لمورد Azure Load Testing.

  3. من قائمة عمليات تشغيل الاختبار، حدد تشغيل الاختبار الخاص بك.

    لقطة شاشة تعرض قائمة عمليات تشغيل الاختبار لاختبار في مورد Azure Load Testing.

    تلميح

    للحد من عدد الاختبارات التي يجب عرضها في القائمة، يمكنك استخدام مربع البحث وعامل تصفية النطاق الزمني.

  4. في جزء Test run details ، حدد Copy artifacts.

    لقطة شاشة توضح كيفية نسخ بيانات الاختبار الاصطناعية من جزء

    إشعار

    يجب أن يكون تشغيل اختبار التحميل في حالة Done أو Stopped أو Failed لملف النتائج ليكون متوفرا للتنزيل.

  5. انسخ عنوان URL SAS لحاوية حساب التخزين.

    يمكنك استخدام عنوان URL SAS في Azure Storage Explorer أو AzCopy لنسخ ملفات CSV النتائج وملفات السجل لتشغيل الاختبار إلى حساب التخزين الخاص بك.

    عنوان URL SAS صالح لمدة 60 دقيقة من وقت إنشائه. إذا انتهت صلاحية عنوان URL، فحدد Copy artifacts لإنشاء عنوان URL SAS جديد.