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

ما هو اختبار الحمل ولماذا هو ضروري

يقوم اختبار الحمل بتقييم برنامجنا تحت عبء متفاوت من المستخدمين الافتراضيين ويسجل وقت الاستجابة وأي أخطاء تحدث. تعد دراسة الحالة الشهيرة هذه مثالا بارزا على سبب أهمية اختبار تحميل برنامجنا: فبراير 2020 اضطراب مطار هيثرو في المملكة المتحدة.

“اختبار الحمل هو نوع من اختبارات الأداء التي تحدد أداء نظام أو منتج برمجي أو تطبيق برمجي في ظل ظروف تحميل واقعية.”
– المهوسون للمهوسين

 

حول منصة اختبار LoadView

تعد منصة LoadView واحدة من أدوات اختبار الأداء القليلة المستندة إلى المستعرض والتي توفر تقارير مفصلة خالية من المتاعب حول اختبارات مواقع الويب وواجهات برمجة التطبيقات والتطبيقات.

يدعم LoadView واجهات برمجة تطبيقات RESTful مثل JSON و XML ، بالإضافة إلى واجهات برمجة تطبيقات SOAP و Web التي تتطلب مصادقة أو تنفيذ متعدد الخطوات. في هذه المقالة نركز على واجهات برمجة تطبيقات الويب وكيف يمكننا ذلك في خمس خطوات بسيطة.

استخدام LoadView لتحميل واجهات برمجة تطبيقات الاختبار: إنشاء واجهة برمجة تطبيقات للاختبار

دعنا ننشئ واجهة برمجة تطبيقات لاستخدامها مع LoadView.

ملاحظة: يمكنك تخطي هذه العملية إذا كان لديك بالفعل واجهة برمجة تطبيقات جاهزة للاختبار.

لأغراض العرض التوضيحي ، سنقوم بإنشاء واجهة برمجة تطبيقات بسيطة باستخدام nodeJs. الهدف من واجهة برمجة التطبيقات هو إدخال عنوان IP وتلقي المعلومات المتعلقة بالعنوان المذكور. سنستخدم MacOs لهذا الغرض. يمكن لمستخدمي Windows و Linux تغيير رمز الإدخال وفقا لنظام التشغيل الخاص بهم.

أولا ، دعنا نقوم بتهيئة المشروع:

npm init load-tester

بمجرد اكتمال العملية ، سترى ملف package.json في الدليل الخاص بك.

سنقوم الآن بتثبيت تبعيتين: Axios و Express ، والتي نحتاجها لإنشاء واجهة برمجة التطبيقات الخاصة بنا:

npm i أكسيوس اكسبرس

واجهات برمجة تطبيقات اختبار الحمل

الآن تمت تهيئة تطبيق العقدة الخاص بنا بنجاح. لتشغيله ، افتح ملف “package.json” وأضف البرنامج النصي التالي للبدء ، واكتب هذا البرنامج النصي:

واجهات برمجة تطبيقات اختبار الحمل

قبل المتابعة ، نحتاج إلى أداة تسمى Nodemon من npm تعيد تشغيل الخادم في كل مرة نجري فيها تغييرات.

npm i nodemon

الآن في نفس الدليل ، قم بإنشاء ملف جديد يسمى “index.js”.

انسخ هذا الرمز إلى ملف الفهرس.js الخاص بك:

import app from "./app.js"

const server = app.listen( 3000, () => {

app.use("/", (req, res) => {

res.end("Hello world!")

})

console.log(`server listening at http://localhost:3000`);

});

 

حتى نتمكن أخيرا من تشغيل ملفنا. في المحطة تشغيل ما يلي:

نودمون

واجهات برمجة تطبيقات اختبار الحمل

حان الوقت الآن للتحقق مما إذا كانت واجهة برمجة التطبيقات الخاصة بنا تعمل أم لا. في هذا العرض التوضيحي ، سنستخدم VS Code Extension Thunder CLIENT ، ولكن يمكنك استخدام أي برنامج تريده.

واجهات برمجة تطبيقات اختبار الحمل

قم بتقديم طلب GET على http://localhost:3000 وستتلقى ردا نصيا “Hello World!”

لتقليد مهمة ضخمة ، سنستخدم ipinfo.io وهي واجهة برمجة تطبيقات تابعة لجهة 3rd ترسل جميع معلومات IP استجابة لواجهة برمجة التطبيقات. ولاستخدام واجهة برمجة التطبيقات نفسها ، نحتاج إلى Axios.

قم بإنشاء تطبيق ملف جديد .js وانسخ التعليمة البرمجية التالية:

import express from "express";

const app = express();

import axios from "axios"

app.use(express.json())

app.get("/api", async (req, res) => {

try{

const result = await axios.get(`https://ipinfo.io/${req.query.ip}/geo`)

console.log(result.data)

res.json({

"result": result.data

})

}

catch(err){

res.json(err.error)

}

})

export default app

 

الآن يجب أن تكون قادرا على رؤية هذا في وحدة التحكم الخاصة بك:

واجهات برمجة تطبيقات اختبار الحمل

الآن دعنا نختبر واجهة برمجة التطبيقات الخاصة بنا مع عميل Thunder.

واجهات برمجة تطبيقات اختبار الحمل

يجب أن ترى الآن أننا قمنا بتنفيذ البحث عن عنوان IP عن طريق تمرير عنوان IP كمعلمة استعلام في عنوان URL.

استخدام LoadView لاختبار واجهة برمجة التطبيقات الخاصة بك

 

الخطوة 1: تسجيل الدخول / تسجيل الدخول لاستلام الاعتمادات

ستجد في loadview-testing.com ثلاثة أنواع متميزة من خدمات اختبار الأحمال:

  • صفحات الويب
  • تطبيق الويب
  • خدمات الويب / واجهات برمجة التطبيقات

واجهات برمجة تطبيقات اختبار الحمل

انقر فوق خدمات الويب / واجهات برمجة التطبيقات. قم بالتمرير لأسفل إلى “اختبار واجهة برمجة التطبيقات الخاصة بك” وحدده.

واجهات برمجة تطبيقات اختبار الحمل

سيطلب منك تسجيل الدخول أو التسجيل إذا كنت مستخدما جديدا.

عند التسجيل ، ستتلقى ما يصل إلى 5 اختبارات تحميل مجانية يمكن استخدامها لتجربة خدمات الاختبار المتميزة. بعد التسجيل الناجح ، يجب إعادة توجيهك إلى هذه النافذة:

واجهات برمجة تطبيقات اختبار الحمل

الخطوة 2: إنشاء جهاز اختبار تحميل جديد

في أعلى يسار الصفحة، انقر على الزر + اختبار جديد. ستتم إعادة توجيهك إلى الشاشة أدناه:

واجهات برمجة تطبيقات اختبار الحمل

حدد نوع اختبار التحميل المناسب مما سبق وفقا لواجهة برمجة التطبيقات الخاصة بك. نظرا لأن لدينا واجهة برمجة تطبيقات ويب REST ، فسنستخدم نوع اختبار تحميل واجهة برمجة تطبيقات الويب REST.

الخطوة 3: تكوين مهمة جهاز اختبار الحمل

الآن سترى نافذة تكوين المهمة. يمكنك تغيير عنوان جهازك من بدون عنوان إلى أي شيء آخر تريده. ينصح أيضا بإضافة وصف إلى الجهاز يشير إلى واجهة برمجة التطبيقات التي تم اختبارها.

نظرا لأن واجهة برمجة تطبيقات الاختبار هذه تعمل محليا ، فنحن بحاجة إلى تشغيلها على بروتوكول HTTP بدلا من HTTPS.

سترى شريط تمرير مفصل متوقفا عن التشغيل. قم بتشغيله وسترى أزرار الاختيار لتحديد البروتوكول الذي تريده. حدد HTTP ثم في اسم المضيف اكتب مجال ومسار واجهة برمجة التطبيقات.

ملاحظة: الخطوات المذكورة أعلاه مخصصة لواجهات برمجة التطبيقات المصنوعة محليا. إذا كان لديك واجهة برمجة تطبيقات مباشرة ، فستحتاج إلى تحديد بروتوكول HTTPS.

انقر فوق “إضافة معلمة” ، واكتب “IP” في اسم المعلمة و “106.201.85.245” كقيمة.

ملاحظة: هذه الخطوة صالحة فقط إذا اتبعت البرنامج التعليمي لواجهة برمجة التطبيقات أعلاه وأنشأت واجهة برمجة تطبيقات مماثلة.

إذا اتبعت الخطوات المذكورة أعلاه بشكل صحيح ، فيجب أن يبدو نموذج عنوان URL لتكوين المهمة كما يلي:

واجهات برمجة تطبيقات اختبار الحمل

عند التمرير لأسفل ، ستجد نافذة الإعدادات. بشكل افتراضي ، يتم تعيين نوع الطلب على GET. نظرا لأن واجهة برمجة التطبيقات الخاصة بنا تحتوي على طلب GET فقط ، فسنترك هذا كما هو.

واجهات برمجة تطبيقات اختبار الحمل

فيما يلي بعض المعلمات الإضافية التي قد ترغب في تمريرها اعتمادا على واجهة برمجة التطبيقات الخاصة بك. اذهب من خلال واختيار كل منهم.

ملاحظة: كن حذرا أثناء التحقق من ذلك لأن إرسال طلب بمعلمات غير صحيحة / غير مكتملة قد يضيع أرصدتك.

الخطوة 4: إنشاء سيناريو

يعتمد هذا القسم كليا على حالة الاستخدام الخاصة بك. بالنسبة إلى واجهة برمجة تطبيقات REST التجريبية، سنستخدم منحنى خطوة التحميل مع العدد الافتراضي للمستخدمين المختلفين. نظرا لأننا نختبر واجهة برمجة تطبيقات أساسية ، فإننا لا نحتاج إلى تقرير مفصل للغاية.

لفهم المزيد حول سيناريو الإنشاء ، يمكنك الرجوع إلى قاعدة معارف LoadView الخاصة بنا.

الخطوة 5: التقرير النهائي

الآن ستخضع واجهة برمجة التطبيقات الخاصة بك لاختبار التحميل. يستغرق هذا عادة حوالي سبع إلى عشر دقائق ، وبعد ذلك يمكنك ببساطة التحقق من التقرير في لوحة المعلومات الخاصة بك. يمكنك أيضا تلقي تقرير مفصل عن طريق البريد الإلكتروني.

تهانينا ، لقد نجحت في إنشاء واجهة برمجة تطبيقات تجريبية و / أو أجريت اختبار تحميل بدائي. لمعرفة المزيد حول LoadView ، قم بالتسجيل للحصول على نسخة تجريبية مجانية من LoadView وقم بجدولة عرض توضيحي فردي. سنكون سعداء أن نسمع منك.