الدليل النهائي ل JMeter
البرنامج التعليمي لاختبار التحميل والأداء
نظرة عامة على دليل JMeter
يعد اختبار الأداء جانبا مهما للغاية من دورة حياة تطوير البرامج والتطبيقات. إذا كانت تطبيقات الويب أو المواقع أو واجهات برمجة التطبيقات الخاصة بك سيتم استخدامها من قبل أعداد كبيرة من المستخدمين ، فأنت بحاجة إلى معرفة كيف سيصمدون أمام ذروة حركة المرور أو فترات طويلة من حركة المرور العالية المستمرة. سيكشف البحث السريع عن أدوات اختبار الأداء عن العديد من الخيارات المجانية والمفتوحة المصدر والقائمة على التجارة. واحدة من هذه الأدوات الشعبية هي Apache JMeter. إذا كنت جديدا على اختبار الأداء ، فقد تسأل نفسك ما هو JMeter؟ وكيف يعمل JMeter؟
JMeter هي أداة اختبار أداء مفتوحة المصدر تعتمد على Java لتشغيل اختبارات التحميل المستندة إلى البروتوكول ضد مختلف خدمات الويب والبرامج وواجهات برمجة التطبيقات (SOAP و REST) وتطبيقات الويب وخدمات الويب الأخرى. بالمقارنة مع أدوات وحلول اختبار الأداء والحمل الأخرى التي تراها في السوق اليوم ، كانت JMeter واحدة من أقدم الأدوات التي تم تقديمها إلى سوق اختبار الأداء ، وهذا هو السبب في أنها لا تزال شائعة وتستخدم على نطاق واسع حتى يومنا هذا. سيتم تحديد هذا الدليل لتغطية جميع الجوانب المختلفة والفوائد والميزات والعيوب في JMeter. سننظر في كيفية عمل JMeter ، وكيفية إجراء اختبارات الأداء ، مع JMeter ، وبدائل JMeter ، وأكثر من ذلك بكثير.
JMeter – كيف يعمل
على المستوى الأساسي ، يعمل JMeter عن طريق محاكاة زوار تطبيقك أو خدمتك من خلال السماح للمستخدمين بإنشاء طلبات HTTP (بروتوكول نقل النص التشعبي) وإرسالها إلى الخادم. ثم يتم جمع بيانات استجابة الخادم ، ويتم عرض البيانات الإحصائية بشكل مرئي للمستخدمين في شكل مخططات وتقارير. من البيانات التي تم جمعها وإنشاء التقارير ، يمكن للمستخدمين مراقبة سلوك التطبيق واختناقات الأداء ، مما يوفر نظرة ثاقبة حول المكان الذي يجب إجراء تحسينات على التطبيق. من المهم ملاحظة أن JMeter ليس متصفحا ، مما يعني أنه يعمل فقط على مستوى البروتوكول ، ولا يدعم جميع الإجراءات التي يتخذها العميل أو المستخدم ، مثل تقديم جافا سكريبت.
على الرغم من هذا القيد ، يوفر JMeter حلا بديلا لهذه المشكلات ، من خلال تقديم ميزات وعناصر مثل مدير ذاكرة التخزين المؤقت ومدير ملفات تعريف الارتباط ومدير الرأس ، مما يسمح ل JMeter بالقدرة على التصرف والأداء مثل متصفح حقيقي. JMeter هو تطبيق سطح مكتب يستند إلى Java ، لذلك من أجل البدء في استخدام JMeter ، هناك العديد من المتطلبات الأساسية التي يجب عليك الوفاء بها قبل أن تتمكن من بدء اختبار الأداء الخاص بك. على سبيل المثال، يجب أن يكون لديك أحدث إصدار من Java مثبتا ويجب أن تفي بالحد الأدنى من متطلبات النظام لتتمكن من استخدام JMeter. مقارنة بأدوات اختبار الحمل المستندة إلى SaaS ، قد يستغرق ذلك بعض الوقت والموارد الإضافية.
هل JMeter أفضل أداة لاختبار التحميل؟
كانت JMeter واحدة من أكثر أدوات اختبار الأحمال مفتوحة المصدر شعبية لفترة طويلة جدا ، مما يجعلها واحدة من أكثر الأدوات شيوعا التي يشعر المطورون وفرق تطوير البرامج بالراحة في استخدامها عندما يتعلق الأمر بإجراء اختبارات الأداء. بالإضافة إلى ذلك ، بسبب طول عمرها في السوق ، هناك كمية كبيرة من الوثائق ودعم المجتمع وأفضل الممارسات لاستخدام JMeter. أضف إلى حقيقة أنه برنامج مجاني مفتوح المصدر ، من وجهة نظر الميزانية ، فإنه يجعله حلا جذابا للفرق والمؤسسات ، حيث لا توجد سوى موارد قليلة أو معدومة مطلوبة للبدء.
ومع ذلك ، مع تغير التكنولوجيا وظهور البرامج المستندة إلى SaaS أصبحت أكثر انتشارا ، وكذلك فعلت حلول اختبار الحمل والإجهاد. على الرغم من أنه لا تزال هناك حاجة إلى حلول اختبار الأحمال مفتوحة المصدر مثل JMeter ، إلا أن هناك العديد من الحلول المستندة إلى السحابة التي تأتي معبأة مع جميع الميزات والفوائد والدعم ، بسعر شهري فعال من حيث التكلفة. على سبيل المثال، يعد التحول من الاختبارات المستندة إلى البروتوكول إلى الاختبارات المستندة إلى المستعرض أمرا بالغ الأهمية لفهم الأداء من وجهة نظر المستخدم. توفر المتصفحات الحديثة اليوم الكثير من الوظائف والدعم لتطبيقات الويب مقارنة بالمتصفحات من أوائل 1990s. لجمع كل بيانات الأداء الضرورية من جانب العميل ، تحتاج إلى أداة أو حل يمكنه دعم اختبار التحميل في المتصفحات الحقيقية.
الأداء مقابل اختبار الحمل مع JMeter – ما الفرق؟
عندما نفكر بشكل عام في اختبار الأداء ، أو عند استخدام مصطلح اختبار الأداء ، فإن ما يتبادر إلى الذهن عادة هو اختبار الحمل. والأكثر من ذلك ، يتم استخدام هذه المصطلحات في بعض الأحيان بالتبادل. ومع ذلك ، هناك فرق. اختبار الحمل والإجهاد هما مجرد مجموعات فرعية أو أنواع من اختبارات الأداء داخل عائلة اختبار الأداء. يمكن تنفيذ اختبار التحميل ضد مختلف الأنظمة ومواقع الويب وتطبيقات الويب وواجهات برمجة التطبيقات والمزيد. يتم تطبيق الحمل المحاكي ، وعادة ما يبدأ من مستويات أقل ، ويزيد الحمل ببطء بمرور الوقت ، من أجل قياس الأداء تحت الحمل وكيفية استجابة النظام الكلي.
يرتبط اختبار الإجهاد واختبار الحمل ، ولكن الهدف من اختبار الإجهاد هو زيادة مقدار الحمل حتى يفشل النظام ، أو يتدهور الأداء. عادة ما يكون لاختبار التحميل حدود تحميل محددة مسبقا ، حتى لا يتسبب في فشل النظام. تشمل الأنواع الأخرى من اختبارات الأداء اختبار الارتفاع ، واختبار التحمل ، واختبار قابلية التوسع ، واختبار الحجم. على الرغم من اختلاف خطط التنفيذ وأهداف هذه الأنواع من اختبارات الأداء، يتم إجراء اختبار الأداء لفهم سبب تحميل تطبيقاتك بشكل أبطأ من المتوقع، وتحديد مشكلات قابلية التوسع المتعلقة باستخدام القرص أو وحدة المعالجة المركزية، أو العناصر أو المكونات المحددة التي تعيق الأداء.
لا بطاقة ائتمان ، لا عقد.
كيفية إجراء اختبار الحمل مع JMeter:
تعليمات خطوة بخطوة للمبتدئين
توفر أداة اختبار الأداء مفتوحة المصدر مثل JMeter للمؤسسات القدرة على إجراء اختبارات الأداء لتطبيقات الويب ومواقع الويب وواجهات برمجة التطبيقات الخاصة بها ، ولكن ليس عليها التعامل مع أي استثمارات مسبقة تأتي مع أدوات اختبار الأداء التجارية أو المدفوعة. عند اختيار حل اختبار تحميل مفتوح المصدر قائم على سطح المكتب مثل JMeter مقابل حل مدفوع قائم على الويب ، مثل LoadView ، هناك العديد من الاعتبارات التي يجب التفكير فيها. إذا كنت مجرد مبتدئ في JMeter ، فقد ترغب في قضاء بعض الوقت لفهم كيفية عمل كل شيء وقراءة المقالات المناسبة أو مشاهدة مقاطع الفيديو حول كيفية البدء في JMeter. دعونا نلقي نظرة على بعض الخطوات التي ينطوي عليها تثبيت JMeter وكيفية تكوين اختبار تحميل أساسي.
الخطوة 1: التحقق من متطلبات النظام
تماما مثل أي تطبيق سطح مكتب آخر ، تحتاج إلى التأكد من أن نظامك يلبي المتطلبات الأساسية اللازمة لتتمكن من تشغيل JMeter. كما ذكرنا سابقا في هذا الدليل ، JMeter هو تطبيق يستند إلى Java ، لذلك تحتاج إلى التأكد من تثبيت Java ، بالإضافة إلى الإصدار الصحيح. JMeter متوافق مع إصدارات Java 8 أو أعلى. بالإضافة إلى ذلك، بالنسبة للأداء والأمان، يوصى بتثبيت أحدث الإصدارات الثانوية من JMeter. يمكن تشغيل JMeter على أنظمة تشغيل Windows و Mac و Linux مختلفة ، لذا تأكد من التحقق من أن نظام التشغيل الخاص بك متوافق أو أن لديك تطبيق Java متوافق.
الخطوة 2: تنزيل JMeter Binaries أو شفرة المصدر
بمجرد التحقق من أن نظامك يلبي جميع متطلبات النظام الضرورية ، يمكنك تنزيل أحدث ثنائيات JMeter أو ملفات المصدر ، اعتمادا على بيئتك أو متطلباتك المحددة. تحتوي الملفات الثنائية على الإصدارات المترجمة من برنامج JMeter ، ويمكنك تشغيله على الفور. من ناحية أخرى ، يمكن تثبيت الملفات المصدر دون استخدام مدير الحزم ، مما يسمح للمطورين أو الفرق بتكوين البرنامج وتجميعها بأنفسهم والحصول على مزيد من التحكم في البرامج المثبتة. في معظم الحالات، يتم تثبيت الإصدارات الثنائية من البرامج. ولاحظ أن هناك أنواع مختلفة من تنزيل الملفات ، بما في ذلك .zip ، وامتدادات الملفات .tgz.
الخطوة 3: عملية تثبيت JMeter
بمجرد اختيار الإصدار الثنائي أو المصدر من JMeter ، سيتم تنزيله على نظامك. يمكنك اختيار فتح الملف أو نقله إلى موقع جديد أو إنشاء موقع مجلد جديد داخل النظام للوصول إليه بشكل أسرع لاحقا. من هناك يمكنك البدء في استخراج الملف. قد يستغرق ذلك بضع دقائق لإكمال عملية التثبيت بأكملها. اعتمادا على نظام التشغيل الخاص بك ، قد تواجه خطوات مختلفة أثناء عملية التثبيت ، ولكن بمجرد تثبيت JMeter ، ستكون وظيفة JMeter هي نفسها.
الخطوة 4: واجهة مستخدم JMeter
عند بدء تشغيل JMeter ، سيتم فتحك وإحضارك إلى نافذة خطة الاختبار. من هنا ، ستتمكن من بناء خطة الاختبار الخاصة بك. تتضمن هذه النافذة الوصول إلى القائمة وشريط الأدوات الرئيسي الموجودين بالقرب من الجانب العلوي الأيسر من النافذة. يمكنك الوصول إلى بعض الميزات نفسها من القائمة وشريط الأدوات الرئيسي، ولكن شريط الأدوات الرئيسي يوفر وصولا أسرع إلى بعض الأدوات والوظائف التي ستستخدمها أثناء عملية إنشاء اختبار التحميل وتكوينه. بالقرب من الجانب العلوي الأيمن من النافذة ، سترى خيارات للوقت والسجلات (عرض / إخفاء) والمستخدمين أثناء تنفيذ الاختبار.
القسم الرئيسي ، المسمى قسم المحرر ، هو المكان الذي ستتمكن فيه من رؤية وتكوين عناصر وحقول خطة الاختبار المختلفة لاختبار التحميل الخاص بك. على يسار قسم المحرر ، سترى طريقة عرض الشجرة لخطة الاختبار أثناء مرورك بعملية إنشاء الاختبار وتكوينه ويمكنك توسيع العناصر الفردية وإغلاقها للتنقل إليها بشكل فردي.
الخطوة 5: إنشاء خطة اختبار تحميل
يمكن لمستخدمي JMeter البدء في إنشاء خطة اختبار التحميل الخاصة بهم من الصفر أو أيضا الاختيار من بين قوالب خطة الاختبار المختلفة الموجودة من القائمة المنسدلة ملف. تتضمن القوالب خطة اختبار SOAP WebService وخطة اختبار الويب الأساسية والمتقدمة وخطة اختبار FTP (بروتوكول نقل الملفات) وخطة الاختبار الوظيفية وغيرها. ستتضمن قوالب الاختبار هذه جميع العناصر والأقسام والحقول المحددة الضرورية التي ستستخدمها لإنشاء خطة اختبار التحميل وإنشائها. إذا كنت جديدا على اختبار الأداء أو JMeter نفسه ، فقد تفضل في البداية استخدام القوالب بدلا من بناء خطة الاختبار الخاصة بك من الصفر ، قبل الانتقال إلى خطط اختبار أكثر تقدما.
لإنشاء خطة اختبار، انتقل ببساطة إلى ملف وحدد جديد أو حدد الزر جديد من شريط الأدوات. من المهم ملاحظة أنه يجب عليك تشغيل JMeter في وضع واجهة المستخدم الرسومية لإنشاء خطة الاختبار. يتم استخدام CLI أو واجهة سطر الأوامر لتنفيذ اختبار التحميل. بعد ذلك ، سنتحدث عن تحديد عدد المستخدمين لاختبار التحميل الخاص بك ، والذي يعرف أيضا باسم مجموعة مؤشرات الترابط.
الخطوة 6: إنشاء مجموعة مؤشرات الترابط
ضمن مربع الحوار مجموعة مؤشرات الترابط، يمكنك تعيين خصائص سلسلة رسائل متعددة وضبطها، مثل عدد مؤشرات الترابط (المستخدمون) وفترة التكثيف (بالثواني) وعدد الحلقات (عدد تكرارات الاختبار)، بالإضافة إلى إجراءات إضافية، مثل التأخيرات وأوقات بدء الاختبار وإيقافه والإجراءات التي يجب اتخاذها بعد خطأ أخذ العينات.
الخطوة 7: تكوين أخذ العينات
في JMeter ، العينات هي التي تسمح ل JMeter بإرسال أنواع مختلفة من الطلبات. على سبيل المثال ، يمكن أن تكون هذه طلبات HTTP (لموقع ويب أو تطبيق أو واجهة برمجة التطبيقات) أو طلب FTP أو طلب SMTP أو طلب TCP أو العديد من الطلبات الأخرى. على سبيل المثال، إذا كنت ترغب في تشغيل اختبار تحميل مقابل صفحة ويب أو موقع ويب، فستحدد طلب HTTP. من هنا يتم عرضك مع إدخال تفاصيل إضافية مثل البروتوكول (HTTP / S) ، اسم الخادم أو IP ، المسار (لصفحة ويب محددة) ، ونوع الطلب ، مثل GET ، POST ، HEAD ، PUT ، وما إلى ذلك ، والتي يمكن استخدامها لاختبار تحميل واجهة برمجة التطبيقات.
الخطوة 8: تكوين المستمعين
لتتمكن من مراجعة نتائج Sampler ، يجب عليك بعد ذلك تكوين ما يعرف باسم المستمعين في JMeter. ضمن نافذة خطة اختبار JMeter، يمكنك الاختيار من بين العديد من المستمعين المختلفين، مثل تقرير الملخص، والرسم البياني التجميعي، وعرض شجرة النتائج، وعرض النتائج في الجدول، بالإضافة إلى العديد من الخيارات الأخرى، لعرض نتائج الاختبار وتحليلها. بالإضافة إلى ذلك، يمكنك إضافة مستمعين متعددين إلى خطة اختبار JMeter. من هذه النقطة، تكتمل خطة الاختبار الخاصة بك، ويمكنك تشغيل الاختبار.
الخطوة 9: تسجيل البرامج النصية لاختبار التحميل
إذا كنت تبحث فقط عن تشغيل اختبارات تحميل HTTP أساسية ، أو على مستوى البروتوكول ، من حيث تكوين الاختبار ، فلا يوجد شيء آخر عليك القيام به. ومع ذلك ، إذا كنت بحاجة إلى تكوين اختبار يشبه إلى حد كبير إجراءات المستخدم ، فستحتاج إلى استخدام مسجل البرنامج النصي لاختبار HTTP (S) الخاص بهم. لذلك ، داخل JMeter ، يضيف هذا خطوة أخرى في خطة الاختبار. ضمن مجموعة مؤشر الترابط ، ستحتاج إلى إضافة وحدة تحكم التسجيل. تتيح لك وحدة التحكم في التسجيل التنقل عبر موقع أو تطبيق ، وستسجل إجراءاتك عبر طلبات HTTP / S. يمكنك أيضا إضافة وحدات تحكم تسجيل متعددة لكل صفحة. توفر وحدة التحكم في التسجيل الوقت، لذلك لا يتعين عليك إضافة كل طلب يدويا.
ومع ذلك ، فإن العيب هو أنك لا تزال تسجل طلبات HTTP / S ، فأنت لا تسجل في الواقع خطوات داخل متصفح حقيقي ، من وجهة نظر المستخدم. الآن ، يمكنك استخدام JMeter Proxy Server أيضا ، والذي يسمح لك بتسجيل البرامج النصية من متصفح ، ولكن لتكوين هذا يستغرق بعض الوقت للإعداد. يجب عليك الانتقال إلى إعدادات وكيل النظام الخاص بك ، واستيراد شهادة JMeter ، ثم تكوين إعدادات الوكيل في النهاية.
بدلا من ذلك ، يعد حل مثل LoadView ، الذي يستخدم مسجل الويب EveryStep ، خطوة كبيرة إلى الأمام من خيارات التسجيل من JMeter ، مثل البرمجة النصية للإشارة والنقر في المتصفحات الحقيقية دون أي من الإعداد المعقد والمعقد الذي يستغرق وقتا طويلا. ما عليك سوى فتح المسجل والبدء في البرمجة النصية.
الخطوة 10: تنفيذ اختبار التحميل
بعد تكوين جميع تفاصيل وإعدادات اختبار التحميل الخاصة بك ، يمكنك ببساطة تحديد الزر تشغيل في شريط الأدوات وسيبدأ الاختبار. تذكر تشغيل الاختبار في وضع CLI للحصول على نتائج أفضل.
الخطوة 11: مراجعة نتائج اختبار التحميل
استنادا إلى نوع المستمع الذي اخترته، يمكنك عرض النتائج أثناء تشغيل الاختبار. على سبيل المثال، إذا قمت بتحديد عرض النتائج في الجدول، فسترى النتائج معروضة أثناء تنفيذ كل تشغيل أو مستخدم. كما ستتضمن النتائج مقاييس إضافية، مثل الوقت (بالمللي ثانية)، والحالة (تعرض الردود والأخطاء الصالحة)، والبايت والبايت المرسل، والكمون، ووقت الاتصال. من هذه النتائج ، يمكنك معرفة مكان حدوث أي أخطاء أو حيث قد تكون هناك أوقات تحميل بطيئة.
جدولة عرض توضيحي مجاني ل LoadView مع مهندس أداء ،
أو تصفح قاعدة معارفنا التفصيلية لمزيد من المعلومات.
اختبار الأداء مع JMeter
كيف يختلف عن اختبار الحمل
والأكثر من ذلك ، نظرا لأن المزيد من التطبيقات تعتمد على المتصفح بدلا من الخادم للحصول على الوظائف والأداء ، يجب عليك أيضا الابتعاد عن الأدوات التي يمكنها فقط إجراء اختبارات التحميل المستندة إلى البروتوكول. على موقع JMeter على الويب ، ينص بوضوح على أنه لا يمكنه تنفيذ أو عرض جافا سكريبت كما يفعل المتصفح ، ويتم تضمين توقيتات الاستجابة فقط. تعد القدرة على اختبار كيفية عرض تطبيقك أو صفحتك تحت الحمل جزءا كبيرا من تجربة المستخدم. ليس ذلك فحسب ، بل إن جميع المستخدمين ليسوا موجودين في نفس المنطقة الجغرافية مثل شركتك. يجب أن توفر أداة اختبار الأداء الصحيحة أيضا طريقة لإجراء الاختبارات الموزعة الخارجية بسهولة للحصول على رؤية أفضل للأداء الفعلي عبر المناطق الجغرافية.
يوفر حل مثل LoadView ، وهو مناسب أيضا لاختبار الحمل والإجهاد والارتفاع وقابلية التوسع ، ميزات مثل المتصفحات الحقيقية والاختبار الموزع وسيناريوهات منحنى التحميل المتعددة وأداة البرمجة النصية للنقطة والنقر ، مما يجعله حلا رائعا لاختبار الأداء وتطبيقات الويب وواجهات برمجة التطبيقات وخدمات الويب الأخرى.
كيفية إجراء اختبار واجهة برمجة التطبيقات باستخدام JMeter
تعليمات كاملة
اختبار واجهة برمجة تطبيقات REST
تستخدم واجهات برمجة تطبيقات REST (نقل الحالة التمثيلية) ، أو واجهات برمجة تطبيقات RESTful ، في تطوير خدمات الويب المختلفة. على عكس واجهات برمجة تطبيقات SOAP ، فإن REST ليس بروتوكولا ، بل هو نمط معماري يعتمد على URIs (معرفات الموارد الموحدة) وبروتوكول HTTP. يستخدم REST بشكل شائع لعرض واجهات برمجة التطبيقات العامة عبر الإنترنت. عندما يقوم مستخدم / عميل بطلب واجهة برمجة تطبيقات REST ، فإن الأمر يشبه البحث عن شيء ما على الإنترنت. يمكنك إدخال ما تبحث عنه وتحصل على قائمة بالنتائج مرة أخرى ، أو في حالة واجهات برمجة تطبيقات REST ، الموارد. ومع ذلك ، مع طلب REST ، هناك مكونات مختلفة ، مثل الرأس والبيانات (النص) والأسلوب ونقطة النهاية (مسار عنوان URL). ما تحصل عليه من الطلب عادة ما يكون بتنسيق JSON أو XML ، ولكن JSON هو التنسيق الأكثر استخداما. تسمح واجهات برمجة تطبيقات SOAP فقط بتنسيق XML.
الخطوة 1: إنشاء خطة اختبار
للبدء، افتح JMeter. سترى أن هناك نافذة خطة اختبار جديدة سيتم فتحها. أو، إذا كان لديك JMeter مفتوح بالفعل، فيمكنك تحديد الزر جديد من شريط الأدوات الرئيسي لإنشاء خطة اختبار جديدة.
الخطوة 2: إنشاء مجموعة مؤشرات الترابط
كما غطينا في القسم السابق ، فإن نافذة مجموعة مؤشرات الترابط هي المكان الذي يمكنك فيه إضافة عدد المستخدمين (مؤشرات الترابط) ، وتعيين وقت التكثيف ، وعدد تكرارات الاختبار (عدد الحلقات).
الخطوة 3: تكوين أخذ العينات
بعد ذلك ، نحتاج إلى إضافة Sampler. يمكنك الاختيار من بين بعض أجهزة أخذ العينات التي تم تكوينها مسبقا في JMeter أو الاختيار من بين واحدة خاصة بك. لأغراض سيناريو اختبار واجهة برمجة التطبيقات هذا ، سنفترض أننا نستخدم خيارا تم تكوينه مسبقا. للقيام بذلك، انقر بزر الماوس الأيمن فوق مجموعة المواضيع لفتح النافذة المنسدلة. حدد إضافة، ثم أخذ العينات. من هنا يمكنك عرض قائمة خيارات أخذ العينات. لاختبار واجهات برمجة التطبيقات ، سنرغب في تحديد طلب HTTP وسيفتح هذا النافذة التالية. من هنا، يمكنك تسمية الاختبار الخاص بك، بالإضافة إلى تكوين الإعدادات لاختبار REST API الخاص بك. شيء واحد يجب ملاحظته هو أن هناك قسمين ، أساسي ومتقدم ، داخل نافذة طلب HTTP. سنركز على الإعدادات الأساسية لهذا الاختبار. ستلاحظ العديد من الحقول ، مثل البروتوكول أو اسم الخادم أو IP أو رقم المنفذ أو طلب HTTP (GET / POST / HEAD / PUT / DELETE ، وما إلى ذلك) ، والمعلمات ، والمزيد.
لذلك ، للبدء ، أدخل عنوان URL لواجهة برمجة التطبيقات في حقل اسم الخادم أو IP (بروتوكول الإنترنت) (اسم المجال فقط) ، إلى جانب البروتوكول المناسب ، وفي حقل المسار ، أضف مسار واجهة برمجة التطبيقات. إذا كان هذا طلب GET، فحدد GET من قائمة طلبات HTTP . إذا كانت لديك معلمات معينة، مثل صفحة معينة، يمكنك إضافة هذا الجزء من عنوان URL في حقل المعلمات. يمكنك أيضا تضمينه في حقل المسار أيضا ، ومع ذلك ، عن طريق إضافته إلى حقل المعلمات ، لديك خيارات حقل إضافية ، مثل ترميز عنوان URL?، ونوع المحتوى، وتضمين Equals؟
أخيرا ، في بعض طلباتك ، ستحتاج إلى تقديم رؤوس طلباتك. للقيام بذلك ، ما عليك سوى الانتقال إلى طلب HTTP في نافذة خطة الاختبار. سيؤدي النقر بزر الماوس الأيمن إلى فتح القائمة المنسدلة. من هنا، حدد إضافة، ثم عنصر التكوين. ملاحظة إضافية حول هذه القائمة المنسدلة هي أن هذا هو المكان الذي ستذهب إليه أيضا لإضافة أي طرق مصادقة API. سيؤدي ذلك إلى فتح الخيارات المتاحة لديك. على سبيل المثال ، سنختار مدير رأس HTTP. سيؤدي ذلك إلى فتح نافذة مدير رأس HTTP ، حيث يمكنك إضافة رؤوس واجهة برمجة التطبيقات. بمجرد الانتهاء من إعداداتك ، يمكنك الانتقال إلى الخطوة التالية.
الخطوة 4: إضافة مستمعين
المستمعون هم ما يستخدم لحفظ نتائج الاختبار وعرضها. يمكنك إضافة أي عدد تريده من المستمعين. لإضافة مستمعين، ما عليك سوى النقر بزر الماوس الأيمن على مجموعة سلاسل الرسائل وتحديد إضافة، ثم المستمع. سيؤدي ذلك إلى فتح القائمة المنسدلة ، حيث سترى أكثر من 15 خيارا للاختيار من بينها. يتضمن المستمعون المختارون بشكل شائع شجرة عرض النتائج وعرض النتائج في الجدول. فقط لاحظ أنه بالنسبة للمستمعين الذين يقدمون تمثيلا رسوميا ، مثل View Results Tree ، فسوف يستهلكون المزيد من الذاكرة ووحدة المعالجة المركزية. بمجرد إضافة المستمعين، يمكنك حفظ خطة الاختبار الخاصة بك.
الخطوة 5: تشغيل الاختبار وعرض النتائج
بعد تكوين تفاصيل وإعدادات اختبار التحميل وحفظها، يمكنك تحديد الزر تشغيل في شريط الأدوات وسيبدأ الاختبار. سترى نتائج Sampler الخاصة بك يتم تحميلها في النافذة وتوفر التفاصيل والبيانات والمقاييس المختلفة ، مثل زمن الوصول ورموز الاستجابة ووقت الاتصال وما إلى ذلك ، لاختبار REST API الخاص بك.
اختبار واجهة برمجة تطبيقات SOAP
واجهات برمجة تطبيقات REST (نقل الحالة التمثيلية) ، أو RESTful إنشاء اختبار واجهة برمجة تطبيقات SOAP (بروتوكول الوصول إلى الكائنات البسيطة) في JMeter يشبه الخطوات لإنشاء اختبار تحميل واجهة برمجة تطبيقات REST. ومع ذلك ، يختلف SOAP عن واجهة برمجة تطبيقات REST ، لأنه بروتوكول خاص به ، لذلك هناك اعتبارات يجب إجراؤها عند تحميل اختبار واجهات برمجة تطبيقات SOAP ، مثل الأمان والامتثال ، وعرض النطاق الترددي (تحتاج واجهات برمجة تطبيقات SOAP عادة إلى المزيد من الموارد) ، والوظائف ، مثل منطق إعادة المحاولة ، والتي لا تمتلكها واجهات برمجة تطبيقات REST. دعونا نلقي نظرة على الخطوات التي ينطوي عليها إنشاء اختبار واجهة برمجة تطبيقات SOAP في JMeter.
الخطوة 1: خطة الاختبار
لقد تطرقنا إلى هذا في الأقسام السابقة ، لكن JMeter يوفر مجموعة متنوعة من قوالب خطة الاختبار. يمكن الوصول إليها من خلال القائمة أو أيقونة القوالب الموجودة في شريط الأدوات الرئيسي. هناك خيار يسمى بناء خطة اختبار خدمة ويب SOAP. سيؤدي تحديد هذا إلى إنشاء خطة الاختبار وفتحها. سترى أقساما إضافية ، مثل المتغيرات المعرفة من قبل المستخدم ، والإعدادات الافتراضية لطلب HTTP ، وعدد المستخدمين ، وما إلى ذلك. وبما أن هذا قالب ، فستكون هناك أيضا قيم عناصر نائبة في بعض الحقول حيث ستحتاج إلى إدخال البيانات والمعلومات المناسبة.
الخطوة 2: مجموعة المواضيع
كما غطينا في تكوين واجهة برمجة تطبيقات REST ، ستحتاج إلى إضافة عدد المستخدمين أو سلاسل الرسائل أو فترة التكثيف أو الحلقات أو تكرار الاختبار. بصفتك مجموعة فرعية ضمن مجموعة مؤشرات الترابط الرئيسية، ستتمكن من الوصول إلى إعدادات طلب HTTP ، كما قمنا بتغطيتها لإعداد واجهة برمجة تطبيقات REST. ومع ذلك ، فإن شكل وأسلوب هذا القسم مختلفان بعض الشيء ، حيث سيتم افتراضيا إظهار نص طلب واجهة برمجة تطبيقات SOAP. كما يتضمن القسمان الفرعيان ” مذبل رأس HTTP” و “تأكيدات الاستجابة “. ومثل تكوين واجهة برمجة تطبيقات REST، يمكنك أيضا إضافة عناصر تكوين إضافية، مثل إدارة تخويل HTTP، للحالات التي تحتاج فيها إلى تضمين تفاصيل التفويض المحددة الخاصة بك.
الخطوة 3: اختبار العينات
لاختبار تحميل واجهة برمجة تطبيقات SOAP ، ستحتاج إلى إضافة عينة طلب HTTP. من هذه النافذة ، يمكنك إدخال التفاصيل المناسبة ، مثل اسم الخادم أو IP والمسار وطلب HTTP ورقم المنفذ بالإضافة إلى بيانات النص الأساسي لطلب SOAP.
الخطوة 4: اختبار المستمعين وتشغيل الاختبار
بمجرد تكوين خطة الاختبار، يكون العنصر الأخير في القائمة هو إضافة المستمعين، والذي سيعرض نتائج الاختبار. مرة أخرى ، يمكنك إضافة أكبر عدد تريده من المستمعين وحسب الاقتضاء لاختبار تحميل واجهة برمجة تطبيقات SOAP.
الخطوة 5: تشغيل اختبار تحميل واجهة برمجة تطبيقات SOAP
بمجرد تعيين تكوين خطة الاختبار وإعداداتها ، يمكنك أخيرا تشغيل اختبار تحميل واجهة برمجة تطبيقات SOAP ومراجعة النتائج بمجرد انتهائها.
اختبار واجهة برمجة تطبيقات REST & SOAP مع JMeter: ملخص
لا بطاقة ائتمان ، لا عقد.
بدائل JMeter – مجانية ومدفوعة
يمكن لأداة اختبار الأداء الصحيحة أن تحدث فرقا كبيرا. وعلى الرغم من أنه لا يوجد نقص في أدوات وحلول اختبار الأداء المجانية والمفتوحة المصدر والمدفوعة ، إلا أن الأمر يتعلق حقا بما يناسب احتياجاتك وخبرة فريقك وميزانيتك. أدوات اختبار الأداء مفتوحة المصدر مثل JMeter ، على الرغم من أنها مجانية ، لا يمكنها تلبية بعض متطلبات اختبار الأداء التي تتطلبها تطبيقات اليوم.
تحميل
LoadView هي واحدة من أفضل حلول اختبار الأداء المدفوعة في السوق اليوم. يوفر الحل الكثير من الميزات ، مثل مسجل البرنامج النصي للإشارة والنقر ، والوصول إلى شبكة عالمية من خوادم حاقن التحميل ، والقدرة على إعداد سيناريوهات منحنى تحميل مختلفة لمزيد من مرونة الاختبار. على عكس JMeter ، لا توجد بنية تحتية أو اعتبارات إضافية مطلوبة. كل شيء يدار من أجلك. وعلى عكس JMeter ، الذي يمكنه فقط توفير اختبارات تحميل على مستوى البروتوكول ، يستخدم LoadView متصفحات حقيقية ، حتى تتمكن من مراقبة الأداء الفعلي لمواقعك وتطبيقاتك وواجهات برمجة التطبيقات الأكثر أهمية. يوفر LoadView أيضا خيارات متعددة ، مثل إضافة عناوين IP الوكيل الثابتة إلى القائمة البيضاء أو استخدام وكيل في الموقع ، لإجراء اختبارات على التطبيقات خلف جدار الحماية الخاص بك ، مما يمنحك أنت وفرقك المزيد من المرونة عندما يتعلق الأمر باختبار الأداء.
تحميل الويب
WebLoad ، من RadView ، هو حل آخر لاختبار الأداء قائم على التجارة أو مدفوع قد تصادفه عند إجراء بحث حول العثور على أداة اختبار الحمل المناسبة لك ولفريقك. اعتمادا على احتياجاتك المحددة ، يأتي WebLoad في خيارين مختلفين: نموذج مستضاف ذاتيا أو نموذج قائم على السحابة. بغض النظر عن الخيار الذي تختاره ، فإن البرنامج له نفس الشكل والمظهر.
من حيث إنشاء البرامج النصية للاختبار ، تستخدم البرامج النصية WebLoad السيلينيوم كمسجل قائم على البروكسي لسيناريوهات اختبار تحميل البرنامج النصي ، والتي قد يكون من الصعب استخدامها إذا لم تكن على دراية بالسيلينيوم. السيلينيوم من تلقاء نفسه له عيوبه ، ولكن هذا هو المكان الذي يأتي فيه WebLoad لتوفير قدرات اختبار الحمل ، مثل أعداد كبيرة من المستخدمين المتزامنين ، وإعداد التقارير ، والدعم الفني ، وأكثر من ذلك. فيما يتعلق بالتسعير والخطط ، لا يتوفر التسعير على موقعهم ، لذلك يجب عليك الاتصال بهم للتسعير. بالإضافة إلى ذلك ، تقتصر خططهم على ثلاثة خيارات: تجريبي واحترافي ومؤسسي. تقدم خطتهم الاحترافية ثلاثة مولدات تحميل فقط. للوصول إلى مواقع غير محدودة ، يجب عليك اختيار خطة Enterprise.
الباذنجان
الباذنجان ، من Keysight Technologies ، هو منصة أتمتة مصممة لجميع عوامل عملية تطوير البرمجيات ، مثل الاختبار الوظيفي والمراقبة. يوفر الحل اختبارا بمساعدة الذكاء الاصطناعي للمساعدة في تقليل وقت الاختبار وتوفير نشر أسرع لتطبيقات البرامج.
يتطلب أداء الباذنجان بعض التدريب ، خاصة للمستخدمين عديمي الخبرة. تعمل أداة البرمجة النصية الخاصة بهم كمسجل وكيل لالتقاط كل حركة مرور HTTP بين الخادم / العميل. لدى المستخدمين خيارات إضافية ، مثل استيراد البرامج النصية من ملفات السيلينيوم أو HAR (أرشيف HTTP). من حيث التسعير مقارنة بأدوات اختبار الحمل الأخرى ، لا يوجد تسعير مدرج ، لذلك يجب عليك الاتصال بفريقهم للحصول على عرض أسعار ، ومع ذلك ، فإنهم يقدمون نسخة تجريبية مجانية.
تحفيز الإجهاد
Stress Stimulus هو حل اختبار الحمل والإجهاد الذي يمكن استخدامه لاختبار مواقع الويب وتطبيقات الويب وواجهات برمجة التطبيقات. يجب تنزيل المنتج إلى جهاز محلي، ولكن يمكن تكوينه ليعمل من السحابة، سواء كان ذلك من خلال مولدات التحميل التي يتم إنشاؤها على أجهزتك الخاصة أو السحابة الخاصة أو في الشبكات السحابية العامة مثل AWS (Amazon Web Services) أو Azure أو تثبيتها محليا من جهاز واحد.
توفر الأداة مجموعة متنوعة من الفوائد والميزات ، مثل إنشاء برامج نصية / سيناريوهات لاختبار الحمل من المتصفح باستخدام معالج الاختبار ، ودعم العديد من البروتوكولات وتقنيات تطبيقات الويب ، ودعم طرق المصادقة الأساسية. يعمل Stress Stimulus أيضا مع Fiddler للجمع بين اختبار الأداء وتصحيح الأخطاء. يوفر Stress Stimulus إصدارات منتجات متعددة ، مثل Free و Pro و Enterprise و Service Provider ، ويسمح كل إصدار للمستخدمين بالوصول إلى ميزات وفوائد محددة.
جاتلينج
Gatling هي أداة أخرى لاختبار الحمل مفتوحة المصدر. مثل JMeter ، كان موجودا منذ فترة طويلة جدا في صناعة اختبار الأداء. يستخدم Gatling بعض التقنيات المختلفة في جوهره: Scala و Netty و Akka ، والتي قد لا تكون شيئا مألوفا لمعظم المطورين أو الفرق.
عادة ما تكون أطر العمل مثل Python و JavaScript و PHP و C # وغيرها من الأطر الأكثر شيوعا التي تراها. على الرغم من ذلك ، لا يزال Gatling شائعا ويستخدم على نطاق واسع لأن Scala يمكن أن يعمل على معظم الأنظمة. بعض فوائد Gatling بما في ذلك إنشاء اختبارات الحمل كرمز ، وتشغيل العديد من المستخدمين الظاهريين داخل مؤشر ترابط واحد (على عكس JMeter) ، ويمكن دمجها في بيئات CI. ومع ذلك ، على الرغم من هذه المزايا ، فإن Gatling محدود في عدد التقنيات والبروتوكولات التي يدعمها ، ولا يوفر واجهة سهلة الاستخدام (والتي قد لا تكون عاملا إذا كان فريقك أكثر تقنية) ، ولأنه حل مفتوح المصدر ، فإنه يحتوي على مجتمع أصغر من الأعضاء مما قد يحد من قدرتك على الحصول على المساعدة أو الدعم عند الحاجة إليه.
تحميل
LoadRunner ، من MicroFocus ، هو حل قديم آخر لاختبار الأحمال سمع به العديد من المطورين والفرق ، أو حتى استخدموه ، كما كان موجودا منذ فترة طويلة. بمرور الوقت ، تغيرت الوظائف والأسماء. يوجد حاليا ثلاث حزم LoadRunner مختلفة: LoadRunner Professional و LoadRunner Enterprise و LoadRunner Cloud (سابقا StormRunner).
تتضمن بعض ميزات وفوائد LoadRunner دعم أكثر من 50 تقنية وإطار عمل لتطبيقات الويب والهاتف المحمول ، ودعم أكثر من 50 تقنية برمجة نصية ، والتكامل مع العديد من CI (التكامل المستمر) وأدوات التعاون التي يستخدمها فريقك بالفعل. لطالما كانت LoadRunner وعائلة منتجاتها وحلولها أكثر من حل لاختبار الأحمال على مستوى المؤسسة ، لذا فإن تكلفة هذه الحلول ، والحلول المرتبطة بها ، ستكون مرتفعة للغاية مقارنة بأدوات اختبار الحمل الأخرى المستندة إلى السحابة.
جرادة
الجراد هو أداة اختبار تحميل مفتوحة المصدر تعتمد على إطار بايثون. مثل الأدوات الأخرى مفتوحة المصدر التي ناقشناها ، فإن الجانب الإيجابي ل Locust هو أنه يوفر طريقة لإنشاء اختبارات تحميل في التعليمات البرمجية ، ومع ذلك ، نظرا لعدم وجود واجهة مستخدم ، لا توجد وظيفة لمسجل برنامج نصي سهل الاستخدام ، مثل حل LoadView ، وهو يلتقط ويدعم فقط استجابات بروتوكول HTTP. وهي ليست مناسبة لفهم الأداء على مستوى العميل.
ومع ذلك ، إذا كان لديك فريق على دراية مرتاح مع Python ، واختبارات الحمل على نطاق أصغر ، فهذه ليست مشكلة. بالإضافة إلى ذلك ، مع Locust ، على عكس منصات اختبار الحمل المستندة إلى السحابة ، يجب عليك استخدام جهازك المحلي لإجراء اختبارات موزعة ، وإذا لم يتمكن من دعم عدد المستخدمين المتزامنين ، فيجب عليك استخدام أجهزة إضافية ، لذلك مرة أخرى ، هناك اعتبارات إضافية يجب مراعاتها.
BlazeMeter
BlazeMeter هي أداة اختبار وظيفية وأداء مدفوعة الأجر تستند إلى SaaS ، تعتمد على ميزات مفتوحة المصدر في JMeter ، وتوسيع قدراتها ، مثل توسيع نطاق اختبارات الحمل ، والوصول إلى حاقنات الحمل الخارجية ، والتقارير ولوحات المعلومات الشاملة وسهلة القراءة ، ودعم المنصات الأخرى مفتوحة المصدر ، مثل Gatling و Selenium و Locust و Option والمزيد.
يحصل المستخدمون على مزايا استخدام أداة مجانية مفتوحة المصدر مع بعض مزايا اختبار التحميل من السحابة. ومع ذلك ، فإن بعض الميزات المضمنة في جميع خطط LoadView ، مثل مسجل البرامج النصية سهل الاستخدام والنقر ، والاختبار خلف جدار الحماية ، ودعم 24 / 7 ، لا يمكن الوصول إليها إلا ضمن خطط BlazeMeter ذات المستويات الأعلى.
لا بطاقة ائتمان ، لا عقد.
جاتلينغ vs. جيه إم تير vs. لود فيو
لقد تحدثنا بالفعل عن بعض بدائل JMeter الأكثر شعبية ، ولكن دعونا الآن نقارن بين Gatling و JMeter و LoadView ، وأيها نعتبره الأنسب لتطبيقات الويب والمواقع وواجهات برمجة التطبيقات لاختبار الحمل والإجهاد.
اختيار أداة اختبار الأداء المناسبة: Gatling مقابل JMeter مقابل LoadView
عندما يتعلق الأمر باختيار أداة اختبار الأداء المناسبة ، فهناك دائما بعض المزايا والعيوب التي تقدمها كل أداة. Gatling و JMeter كلاهما أدوات مفتوحة المصدر شائعة توفر القدرة على المزيد من التخصيص والتعديل من قبل فرق التطوير. ومع ذلك ، هذا يعني أنه قد يكون هناك المزيد من منحنى التعلم إذا كنت أنت وفريقك قد بدأوا للتو في استخدام هذه الأدوات. غالبا ما تأتي مرونة البرمجة النصية مع تكوينات إضافية يمكن أن تصبح في نهاية المطاف أكثر استهلاكا للوقت مما هو مقصود. من ناحية أخرى ، LoadView هو حل اختبار أداء قائم على السحابة مدار بالكامل يمكنه تشغيل الاختبارات المستندة إلى المتصفح ويدعم البرمجة النصية من المتصفحات الحقيقية ، وهي ميزة لا يقدمها JMeter و Gatling. بالإضافة إلى ذلك ، نظرا لأن كلا من Gatling و JMeter مثبتان على جهاز محلي ، فإن إجراء اختبارات واسعة النطاق أمر صعب بسبب قيود النظام.
مزايا أداة اختبار التحميل المستندة إلى المتصفح
توفر أداة اختبار التحميل المستندة إلى المتصفح مثل LoadView العديد من الميزات والفوائد التي لا يمكن للأدوات مفتوحة المصدر توفيرها. على سبيل المثال ، عند تحميل تطبيقات الويب ، يستخدم LoadView مسجل الويب EveryStep الذي يسمح للمستخدمين بإنشاء برامج نصية (متصفحات سطح المكتب والجوال) ببساطة عن طريق التنقل عبر التطبيق أو الصفحة كما تنوي أن يفعل المستخدمون. لا يوجد ترميز أو برمجة يدوية مثل JMeter و Gatling تتطلب ، ومع ذلك ، إذا كنت بحاجة إلى تخصيص البرنامج النصي بأي شكل من الأشكال ، فيمكنك القيام بذلك. الإعداد وتكوين الاختبار هو أيضا بسيط ومباشر.
يأخذك حل LoadView خلال كل خطوة من خطوات العملية، حتى تتمكن أنت وفرقك من التركيز على تنفيذ الاختبار. أخيرا ، يمكن لمستخدمي LoadView الوصول إلى أكثر من 20 خادما لحاقن التحميل حول العالم ، لذا فإن الاختبار من المواقع التي يتواجد فيها المستخدمون سيمنحك بيانات أداء أكثر واقعية مقابل التقاط استجابات HTTP من جهازك المحلي. عرض التقارير ولوحات المعلومات والمخططات الانحدارية لفهم كيفية استجابة التطبيق أو موقع الويب أو واجهة برمجة التطبيقات لاختبار التحميل.
بليز ميتر مقابل جيه إم إيتر vs. لودفيو
كما تطرقنا في الأقسام السابقة في هذا الدليل ، فإن BlazeMeter هو إصدار اختبار الحمل المستند إلى السحابة من JMeter ، مما يوفر طريقة للمطورين لنقل اختبار الحمل الخاص بهم إلى المستوى التالي ، وإزالة قيود JMeter ، مثل إعداد التقارير ، ودعم البرمجة النصية / البروتوكول ، واختبار تطبيقات الويب المعقدة. BlazeMeter و LoadView كلاهما عبارة عن منصات اختبار تحميل مستندة إلى السحابة تسمح للمطورين والفرق بتوسيع نطاق اختبارات الحمل الخاصة بهم وتشغيلها من مواقع جغرافية متعددة. ومع ذلك ، بالمقارنة مع حل مثل LoadView ، يعد BlazeMeter حلا معقدا ومكلفا ، حيث يوفر أكثر من مجرد قدرات اختبار الحمل ، ويوفر الآن اختبارا وظيفيا واختبارا ومراقبة لواجهة برمجة التطبيقات كجزء من حزمها وخططها ، والتي قد تجدها بعض الفرق غير ضرورية.
في حين أن أدوات اختبار الأحمال مفتوحة المصدر مثل JMeter لا تزال لها مكان في اختبار الأداء ، إلا أن تطبيقات وتقنيات الويب أصبحت أكثر تعقيدا ، وهذا هو السبب في أن حلا مثل LoadView مثالي. يدعم LoadView جميع البروتوكولات والأطر والمتصفحات الشائعة ، وخيارات منحنى التحميل المختلفة لإجراء اختبارات أكثر واقعية ، وهو حل فعال من حيث التكلفة مقارنة بالحلول الأخرى المستندة إلى السحابة في السوق.
كل ذلك من حل واحد مناسب لاختبار الحمل.
الأسئلة المتداولة حول JMeter النهائي
يعد اختبار الأداء جزءا مهما من عملية تطوير التطبيقات. توفر الأدوات مفتوحة المصدر ، مثل JMeter ، طريقة مجانية وسهلة للمطورين والفرق لإجراء اختبار الحمل المستند إلى البروتوكول. ليس ذلك فحسب ، بل يضمن اختبار الأداء أيضا أن الوقت والجهد الذي تم بذله في تطوير تطبيقات الويب يؤتي ثماره عند وضعه أمام المستخدمين. سيؤدي بطء تحميل التطبيقات والمواقع وواجهات برمجة التطبيقات إلى الانتقاص من تجربتهم. JMeter هي أداة لاختبار الحمل موجودة منذ فترة طويلة جدا ولديها مجموعة واسعة من الميزات والقدرات واعتبارات التكوين.
فيما يلي بعض الأسئلة والأجوبة المتداولة حول JMeter.
جدول المحتويات
- ما هي فترة زيادة JMeter؟
- ما هو مستخرج JMeter JSON ، وكيف يعمل؟
- هل يمكنني استخدام JMeter بتنسيق سطر الأوامر؟
- ما هو الحد الأقصى للإنتاجية ل JMeter؟
- هل JMeter أفضل أداة اختبار تحميل مجانية؟
- ما هي أفضل البدائل المدفوعة ل JMeter؟
- كيف يمكنني تثبيت JMeter؟
- كيف يمكنني تحميل الاختبار باستخدام JMeter؟
- ما هو مثال جيد على تأكيد JMeter BeanShell؟
- هل هناك شيء مثل شهادة JMeter عبر الإنترنت؟
- هل يمكن ل JMeter تحليل استجابة JSON؟
- هل يمكنك استخدام JMeter مع Jenkins و Maven؟
- ما هو معالج JMeter اللاحق؟
- ما هو متغير JMeter السابق؟
- هل يتطلب JMeter شهادة وكيل؟
- كيف تحافظ على جلسات JMeter من الانتهاء؟
- أين يمكنني العثور على لقطات شاشة JMeter؟
- ما هو أفضل بديل ل JMeter؟
- هل يستحق الدفع مقابل أداة اختبار الحمل؟
ما هي فترة زيادة JMeter؟
عند تكوين اختبار التحميل داخل JMeter ، فإن أحد الحقول التي يجب على المستخدمين مراعاتها هو فترة التكثيف. فترة التكثيف هي طول الوقت المستغرق للوصول إلى عدد المستخدمين أو سلاسل الرسائل التي قمت بتعيينها في الاختبار. على سبيل المثال، إذا قمت بتعيين عدد سلاسل الرسائل عند خمسة وفترة التكثيف هي 50 ثانية، فسيكون هناك تأخير لمدة 10 ثوان بين كل سلسلة رسائل. يضمن تعيين فترة زيادة عدم تنفيذ جميع مؤشرات الترابط في نفس الوقت وتجنب عبء العمل المرتفع جدا في بداية الاختبار.
ما هو مستخرج JMeter JSON ، وكيف يعمل؟
مستخرج JMeter JSON (تدوين كائن جافا سكريبت) ، أو كما يطلق عليه مع JMeter ، معالج JSON اللاحق ، يفعل بالضبط كما يوحي الاسم. يسمح للمستخدمين باستخراج البيانات أو المحتوى النصي من ردود JSON ومقارنتها بالطلب ، أو تمرير هذه القيم إلى طلب آخر. تحدثنا سابقا في هذا الدليل عن عينات JMeter ، والتي هي التي تؤدي العمل الفعلي لاختبار JMeter الخاص بك. إذا كنت تستخدم مستخرج JSON، فيجب إنشاء هذا كعنصر تابع ضمن أداة أخذ العينات التي أشرت إليها.
هل يمكنني استخدام JMeter بتنسيق سطر الأوامر؟
يتم إنشاء خطة اختبار التحميل في JMeter في وضع واجهة المستخدم الرسومية (GUI). بمجرد إنشاء الاختبار ، يمكن تشغيل الاختبار نفسه في وضع CLI (واجهة سطر الأوامر) ، والذي كان يسمى سابقا وضع Non-GUI. يستهلك تنفيذ الاختبار في وضع CLI ذاكرة أقل ، وبالتالي يمكن استخدام المزيد من مؤشرات الترابط على مولد التحميل.
ما هو الحد الأقصى للإنتاجية ل JMeter؟
يعتمد مقدار الإنتاجية التي يمكن ل JMeter استخدامها على أجهزة جهازك المحلي. يمكنك تحديد الإنتاجية عن طريق التجربة والخطأ، وزيادة عدد المستخدمين، أو سلاسل الرسائل، وعندما تبدأ في تلقي رسائل خطأ حول الوصول إلى سعة الذاكرة الخاصة بك. هناك بعض الحلول البديلة لزيادة عدد المستخدمين، مثل التشغيل في وضع CLI، أو زيادة مساحة كومة الذاكرة المؤقتة، أو الذاكرة، باستخدام اتصال LAN (شبكات المنطقة المحلية) بدلا من Wi-Fi، أو تشغيل البرامج النصية عبر أجهزة إضافية.
هل JMeter أفضل أداة اختبار تحميل مجانية؟
في حين أن JMeter هي واحدة من أدوات اختبار التحميل المجانية مفتوحة المصدر الأكثر شعبية ، إلا أن هناك العديد من أدوات اختبار الحمل المجانية الأخرى المتاحة. يتعلق الأمر بالتطبيقات أو التقنيات التي تحتاج إلى دعم لها ، وقدرات فريقك ، ونوع نتائج الاختبار والتقارير التي تحتاجها. هناك العديد من الأدوات التي تستخدم أطر عمل البرمجة النصية المختلفة وميزات قابلية التوسعة ، لذلك من المهم العثور على الأداة التي تلبي احتياجاتك على أفضل وجه. عادة ما تكون حلول اختبار الحمل المدفوعة أكثر اكتمالا وتزيل الكثير من متاعب الاضطرار إلى إنشاء اختبارات التحميل وتكوينها يدويا.
ما هي أفضل البدائل المدفوعة ل JMeter؟
اليوم ، لدى فرق التطوير ومختبري الأداء العديد من البدائل المجانية والمدفوعة ل JMeter. ناقشنا بعض هذه في الأقسام أعلاه ، مثل LoadView و WebLoad و BlazeMeter و LoadRunner. بعض المزايا التي تتمتع بها الأدوات المدفوعة على الأدوات مفتوحة المصدر هي أنها تقلل من مقدار الوقت اللازم لتكوين اختبارات الحمل وبرمجتها ، وعادة ما تدعم المزيد من التقنيات والأطر ، وتوفر الوصول إلى المزيد من مولدات الحمل حتى لا تضطر إلى إدارة الشبكة ، والدعم المخصص.
كيف يمكنني تثبيت JMeter؟
يعد تثبيت JMeter أمرا مباشرا وبسيطا ، ومع ذلك ، نظرا لأنه يحتاج إلى تثبيته على جهاز محلي ، يجب أن يفي الجهاز الذي تقوم بتثبيت JMeter عليه بمتطلبات النظام المحددة. بالإضافة إلى ذلك ، نظرا لأن JMeter هو تطبيق Java ، يجب أن يكون لديك إصدار متوافق أو محدث من Java مثبت. يوفر JMeter اثنين من الملفات الثنائية والمصدرية المختلفة للمستخدمين للاختيار من بينها.
كيف يمكنني تحميل الاختبار باستخدام JMeter؟
هناك العديد من الخطوات التي ينطوي عليها تحميل الاختبار باستخدام JMeter ويمكن أن تختلف هذه الخطوات ، اعتمادا على ما هو الاختبار الخاص بك. ناقشنا ، بالتفصيل ، عملية إعداد اختبارات الحمل مع JMeter في الأقسام السابقة من هذا الدليل ، ولكن من أجل البساطة ، هذه هي الخطوات التي ينطوي عليها اختبار الحمل مع JMeter:
- قم بتكوين خطة اختبار التحميل.
- إضافة مجموعة سلاسل الرسائل وتكوينها.
- وحدة تحكم التسجيل
- عدد المواضيع (المستخدمون)
- فترة التكثيف
- عدد الحلقات (التكرارات)
- مسجل البرنامج النصي للاختبار (في حالة تسجيل تفاعلات المستخدم)
- إعدادات الشبكة
- تثبيت الشهادة
- إعدادات المتصفح
- إضافة وتكوين أخذ العينات
- طلبات HTTP أو FTP أو SMTP أو TCP ، إلخ.
- اسم الخادم أو عنوان IP
- مسار عنوان URL
- إضافة المستمع وتكوينه
- تقرير موجز، رسم بياني تجميعي، شجرة عرض النتائج، عرض النتائج في الجدول، إلخ.
- اختبار المدى
- جمع نتائج الاختبار وعرضها.
ما هو مثال جيد على تأكيد JMeter BeanShell؟
داخل JMeter ، يمكن للمستخدمين استخدام مكونات BeanShell المدمجة. BeanShell هو مترجم فوري مفتوح المصدر يستند إلى جافا. يوفر BeanShell للمستخدمين فوائد متعددة ، مثل قابلية توسيع التطبيقات والبرامج النصية ، وتصحيح الأخطاء ، والعمل مع كائنات Java وواجهات برمجة التطبيقات ديناميكيا. هناك العديد من التأكيدات التي يدعمها JMeter اعتمادا على سيناريو الاختبار الخاص بك. يسمح تأكيد BeanShell في JMeter للمستخدمين بالتحقق من تأكيد معين باستخدام برنامج نصي BeanShell. مثال على ذلك هو التحقق مما إذا كان الخادم يعرض استجابة أو سلسلة معينة أو قيمة في حقل JSON. هناك أيضا متغيرات محددة مسبقا يمكن تنفيذها في البرنامج النصي ، مثل FailureMessage و SamplerData و SampleResult وما إلى ذلك. يلاحظ داخل JMeter أنه يجب على المستخدمين الانتقال إلى عناصر اختبار JSR223 والتبديل من وظائف BeanShell إلى وظائف Groovy.
هل هناك شيء مثل شهادة JMeter عبر الإنترنت؟
لا توجد شهادة JMeter رسمية عبر الإنترنت من خلال موقع JMeter نفسه ، ومع ذلك ، هناك شهادات JMeter عبر الإنترنت من خلال شركات أخرى ، مثل BlazeMeter و Udemy و VSkills و Edureka وغيرها. هناك أيضا بعض البرامج التعليمية الرائعة من مستخدمي JMeter العاديين على YouTube والتي يمكن الوصول إليها للمساعدة في إرشادك خلال خطوات محددة أو استكشاف أي مشكلات قد تواجهها وإصلاحها.
هل يمكن ل JMeter تحليل استجابة JSON؟
أثناء إنشاء خطة الاختبار وإعدادها في JMeter ، يكون لدى المستخدمين خيار الاختيار من بين العديد من معالجات Post. واحد من هذه تشمل JSON المصرف. تسمح هذه الميزة للمستخدمين بسحب البيانات المحددة التي تحتاجها باستخدام بناء جملة JSON-PATH ويتم تكوينها بعد أخذ العينات (كعنصر تابع). هناك العديد من السمات في نافذة JSON-PATH Post-Processor ، مثل الاسم وأسماء المتغيرات وتعبيرات مسار JSON وأرقام المطابقة وحساب تسلسل var وما إلى ذلك.
هل يمكنك استخدام JMeter مع Jenkins و Maven؟
يمكن استخدام JMeter مع CI / CD وأدوات الإدارة ، مثل Jenkins و Maven. Jenkins ، مثل JMeter هي أيضا أداة مفتوحة المصدر تستند إلى Java ، مما يسمح للمستخدمين بأتمتة اختباراتهم. يستخدم Maven لبناء وإدارة المشاريع المستندة إلى Java. لاستخدام JMeter مع Jenkins ، يجب أن يكون لديك حساب Jenkins نشط (بالإضافة إلى تثبيت المكون الإضافي Git) وأن يكون Jenkins مثبتا على نفس الجهاز الذي قمت بتثبيت JMeter عليه. يجب حفظ البرامج النصية JMeter في Git بحيث يمكن الوصول إليها عبر Jenkins. بمجرد ربط حساباتك معا ، يمكنك متابعة عملية تكوين وإنشاء الاختبار الخاص بك عبر Jenkins. مع Maven ، يوفر JMeter مكونا إضافيا يمكن الوصول إليه من خلال GitHub ، مما يسمح للمستخدمين بإجراء الاختبارات من خلال مشروع Maven الخاص بك بدلا من تشغيلها كبرامج نصية.
ما هو معالج JMeter اللاحق؟
ضمن إعداد اختبار تحميل JMeter ، هناك معالجات مسبقة ومعالجات لاحقة. تقوم المعالجات المسبقة بتنفيذ بعض الإجراءات قبل طلب أخذ العينات، مثل الحصول على البيانات من صفحة الويب. من ناحية أخرى ، يعمل ما بعد المعالج بعد عنصر Sampler ويستخدم عادة لاستخراج البيانات أو تحليلها من استجابة HTTP.
ما هو متغير JMeter السابق؟
المتغير السابق هو واحد من عدة متغيرات مستخدمة في البرامج النصية Apache Groovy قبل تنفيذ البرنامج النصي. تتضمن الأمثلة الأخرى السجل (Logger) و ctx (كائن JMeterContext) و vars (كائن JMeterVariables) والدعائم (JMeterProperties) و threadName و sampler ، على سبيل المثال لا الحصر. يمكن استخدام المتغير السابق في إجراءات JSR223 Post-Processor ، مثل الحصول على معلومات معينة ، مثل وقت الاتصال ، والكمون ، والبايت ، ومعلومات عنوان URL ، وما إلى ذلك ، لمجموعة مؤشر ترابط طلب HTTP.
هل يتطلب JMeter شهادة وكيل؟
عند استخدام مسجل البرنامج النصي لاختبار JMeter HTTP (S) ، يجب على المستخدمين اتباع خطوات تكوين مختلفة ليتمكنوا من استخدام هذه الميزة. تتضمن إحدى هذه الخطوات بدء تشغيل خادم وكيل JMeter لإجراءات البرمجة النصية من المستعرض. لكي يحدث ذلك ، يجب على مستخدمي JMeter تثبيت شهادة JMeter CA (المرجع المصدق). تستخدم اتصالات HTTP / S الشهادات لمصادقة الاتصالات بين الخوادم والعملاء / المتصفحات. يسمح تثبيت شهادة JMeter CA ل JMeter بالعمل كخادم حتى يتمكن من سحب استجابات HTTPS (بروتوكول نقل النص التشعبي الآمن) من المستعرض.
كيف تحافظ على جلسات JMeter من الانتهاء؟
داخل كل من عينات JMeter المختلفة ، هناك خيارات تكوين محددة ، بما في ذلك تعيين معلمات مهلة مختلفة ، مثل مهلة الاتصال ، مهلة القراءة ، مهلة الاستجابة ، مهلات الاستعلام ، إلخ. إذا كان Sampler لا يدعم المهلات ، فيجب تعيينه لفترة كافية بحيث لا تنتهي المهلة أثناء اختبار التحميل.
كيف تحافظ على جلسات JMeter من الانتهاء؟
يمكن العثور على لقطات شاشة JMeter لأمثلة الاختبارات ومربعات الحوار والخطوات وجميع عناصر اختبار JMeter عبر موقع JMeter على الويب و JMeter Wiki وقسم الأسئلة الشائعة في JMeter ، بالإضافة إلى مراكز تعلم تكنولوجيا المعلومات والموارد التابعة لجهات خارجية ، مثل GitHub و GitLab و Guru99 و Bitbucket. لدى JMeter قاعدة معرفية واسعة من المحتوى والدعم المدعوم من المجتمع.
ما هو أفضل بديل ل JMeter؟
تتطلب أداة اختبار الأحمال مفتوحة المصدر مثل JMeter معرفة واسعة ب JMeter ومعرفة البرمجة ، بالإضافة إلى فريق من ذوي الخبرة لإعداد الاختبارات وتنفيذها. كانت JMeter واحدة من أوائل رواد اختبار الحمل ، ولكن مواقع الويب والتطبيقات وواجهات برمجة التطبيقات أصبحت أكثر تعقيدا ، وهناك حاجة إلى أدوات وحلول وتقنيات جديدة لاختبار الأحمال. لقد ناقشنا الكثير من البدائل ، مفتوحة المصدر والمدفوعة ، إلى JMeter في هذا الدليل ، مثل Gatling و LoadView و WebLoad و LoadRunner و Locust و BlazeMeter. على الرغم من أن الخيار المجاني المفتوح المصدر قد يبدو جذابا في البداية ، إلا أنه يأتي مع الكثير من التكوين اليدوي الإضافي والعمل. يسمح حل قائم على الويب مثل LoadView للمختبرين والفرق بالتركيز على اختبار الحمل ، باستخدام متصفحات حقيقية ، وينقذهم من أعباء الاضطرار إلى إدارة حاقنات الحمل والأجهزة الإضافية. يدعم LoadView أحدث البروتوكولات والتقنيات ، ويدعم أدوات الجهات الخارجية مثل Postman ، ويوفر شبكة من خوادم حاقن الحمل السحابي من جميع أنحاء العالم.
هل يستحق الدفع مقابل أداة اختبار الحمل؟
هناك العديد من أدوات اختبار الحمل مفتوحة المصدر الرائعة ، وناقشنا عددا قليلا منها في هذا الدليل. من الصعب تمرير أداة مجانية ، فقد لا تقدم الحلول مفتوحة المصدر جميع الميزات ، خارج الصندوق ، التي تحتاجها. تدعم الكثير من أدوات اختبار التحميل المدفوعة بروتوكولات متعددة ، وعمليات تكامل الجهات الخارجية ، وتقديم أدوات البرمجة النصية ، وخطط التسعير المتعددة ، والوصول إلى الدعم كلما احتجت إلى ذلك. بالإضافة إلى ذلك ، كما رأينا مع JMeter ، إنها أداة معقدة للغاية تتطلب الكثير من المعرفة لاستخدامها. هناك العديد من الخطوات التي ينطوي عليها إعداد خطة الاختبار والتكوينات المختلفة التي يجب مراعاتها. إذا لم تكن قد استخدمت JMeter من قبل ، فقد يستغرق الأمر بعض الاختبارات للحصول عليه بشكل صحيح. عادة ما ترشدك أدوات اختبار الحمل المدفوعة خلال العملية ، خطوة بخطوة ، لذلك بحلول نهاية إكمال خطة الاختبار الخاصة بك ، تكون جاهزة للذهاب. لن تضطر إلى إضاعة وقت إضافي في إنشاء المزيد من الاختبارات أو العودة وإعادة تكوين الاختبار. إذا تمكنت من العثور على أداة تدعم التقنيات التي تحتاج إلى اختبارها ، ومجموعة ميزات رائعة ، وكل ذلك في حدود ميزانيتك ، فإن الأمر يستحق الدفع مقابل أداة اختبار التحميل.
يوفر حل اختبار الحمل الخاص بنا ، LoadView ، للمستخدمين أفضل اختبار تحميل قائم على السحابة في حزمة فعالة من حيث التكلفة. على عكس JMeter ، وهو ليس متصفحا حقيقيا يستخدم فقط الاختبارات المستندة إلى البروتوكول ، والتي ، كما ناقشنا في هذا الدليل ، لا تكفي لمواقع الويب والتطبيقات اليوم. يتم الآن دفع الكثير من تنفيذ الأداء إلى المتصفحات ، لذلك من الأهمية بمكان أن يكون لديك حل يمكنه برمجة وتنفيذ ومحاكاة إجراءات المستخدم الحقيقية داخل المتصفح. لا يمكن ل JMeter تنفيذ جافا سكريبت ، وبالتالي طلبات AJAX (جافا سكريبت غير متزامنة و XML) ، لذلك يعد ذلك عيبا كبيرا للكثير من مختبري الأداء. يدعم LoadView ، إلى جانب مسجل الويب EveryStep ، تقنيات تطبيقات الويب الديناميكية مثل JavaScript و AJAX و Java و HTML5 و PHP والمزيد. يعد إنشاء البرامج النصية لاختبار الحمل أمرا سهلا مثل التنقل عبر تطبيقاتك مثل المستخدم العادي. علاوة على ذلك ، توفر منصة LoadView للمستخدمين شبكة عالمية من مولدات الأحمال المستندة إلى السحابة ، وليس الحمل الناتج عن جهازك المحلي مثل عروض JMeter ، والتي توفر ظروفا أكثر واقعية ، وبالتالي نتائج أفضل للاختبار وإعداد التقارير.
المرحلة التالية
تجربة ميزات لا مثيل لها مع قابلية التوسع غير المحدودة. لا بطاقة ائتمان ، لا عقد.