كيفية جدولة اختبارات API المؤتمتة في Apidog (السحابة، رانر، وCLI)

تعلم كيفية جدولة اختبارات واجهة برمجة التطبيقات (API) المؤتمتة في Apidog: تشغيل الاختبارات المتكررة على بيئة تشغيل (Runner) مستضافة ذاتيًا، إشعارات الفشل، اختبار الانحدار الليلي، بالإضافة إلى واجهة سطر الأوامر (CLI) ومسار cron.

INEZA Felin-Michel

INEZA Felin-Michel

15 يوليو 2026

كيفية جدولة اختبارات API المؤتمتة في Apidog (السحابة، رانر، وCLI)

Apidog للمؤسسات

النشر على الخوادم المحلية

SSO و RBAC

متوافق مع SOC 2

استكشف Apidog للمؤسسات

مجموعة اختبارات ناجحة لا تفيد إلا إذا استمرت في النجاح. قد يعمل تدفق الدفع الخاص بك اليوم، ولكن قد يقوم أحد التبعيات بإرسال تغيير جذري في الساعة 2 صباحًا، أو تنتهي صلاحية شهادة في عطلة نهاية الأسبوع، أو يؤدي انحراف في التكوين إلى تعطيل نقطة نهاية المدفوعات يوم الأحد. تكتشف ذلك من عميل غاضب بدلاً من تشغيل الاختبار. الحل ممل وموثوق: قم بتشغيل اختبارات API الخاصة بك بجدول زمني، دون تدخل بشري بالضغط على زر، وسيتم إخبارك فورًا عند حدوث أي عطل.

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

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

ما تفعله المهام المجدولة (وكيف تختلف عن أدوات الكشط المجدولة)

تقوم المهمة المجدولة في Apidog بتشغيل سيناريو اختبار واحد أو أكثر محفوظًا في دورة متكررة. فكر في اختبار الانحدار الليلي عبر واجهة برمجة التطبيقات الأساسية لديك، أو فحص سريع (smoke check) كل بضع ساعات مقابل بيئة الاختبار، أو فحص صحي نهاية الأسبوع. تتذكر المهمة السيناريوهات التي يجب تشغيلها، والبيئة المستهدفة، وعدد مرات التشغيل، والجهاز الذي يقوم بتنفيذ العمل، ومن يجب إخطاره عند الفشل.

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

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

قبل البدء: قم بتكوين Runner مستضاف ذاتيًا

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

الـ Runner هو جهاز يقوم بتنفيذ مجموعة الاختبار. عندما يتم تشغيل مهمة مجدولة، لا يقوم Apidog بتشغيل الطلبات في عميل سطح المكتب الخاص بك؛ بل يسلم المهمة إلى الـ Runner الذي اخترته، ويتم إرسال كل طلب في المجموعة من ذلك الجهاز. يعمل صندوق CI، أو خادم صغير دائم التشغيل، أو جهاز افتراضي مخصص كلها بشكل جيد. أيًا كان ما تختاره، فإنه يبقى مستيقظًا ومتاحًا في الجدول الزمني الذي تريده.

يوفر حقل "هدف الـ Runner" خيارين: Apidog Cloud، الذي يحمل علامة "قريبًا"، أو Runner مستضاف ذاتيًا. نظرًا لأن Apidog Cloud غير متاح بعد، فإن الـ Runner المستضاف ذاتيًا هو الخيار الوحيد الفعال اليوم. لا تخطط للتنفيذ السحابي حتى يتم إطلاقه.

نظرًا لأن الطلبات تنشأ من جهاز الـ Runner، فإن بيئته الشبكية تشكل نتائجك. قد يرى الـ Runner خلف شبكة VPN للشركات، أو في منطقة مختلفة، أو شبكة فرعية محمية بجدار حماية استجابات مختلفة عن تلك التي يراها جهاز الكمبيوتر المحمول الخاص بك. هذا عادة ما تريده للمراقبة الواقعية، ولكن من الجدير بالمعرفة عندما يختلف التشغيل المجدول مع تشغيل محلي.

خطوة بخطوة: إنشاء مهمة مجدولة

مع تسجيل Runner، يحدث الباقي في العميل. المثال الجاري أدناه هو مجموعة اختبار انحدار ليلية لواجهة برمجة تطبيقات للتجارة الإلكترونية تغطي تسجيل المستخدم، قائمة المنتجات، سلة التسوق، وعملية دفع مدعومة بواسطة Stripe.

1. افتح المهام المجدولة في وحدة الاختبارات

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

2. إنشاء المهمة

انقر فوق + جديد لإنشاء مهمة مجدولة جديدة. يمكنك أيضًا إنشاء مجلد هنا لتجميع المهام ذات الصلة، وهو أمر مفيد بمجرد أن يكون لديك مجموعات منفصلة للبيئات التجريبية والإنتاجية أو لخدمات مختلفة.

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

3. حدد سيناريوهات الاختبار للتشغيل

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

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

اختيار البيئة هو الإعداد الذي يهتم به الناس أكثر. وجه مراقبة الإنتاج الليلية إلى بيئة الإنتاج الخاصة بك، ووجه اختبارًا سريعًا قبل الإصدار إلى بيئة الاختبار (staging). نظرًا لأن كل سيناريو يمكنه تحديد بيئته الخاصة، يمكن لمهمة واحدة حتى خلط الأهداف إذا احتجت إلى ذلك، على الرغم من أن الاحتفاظ بمهمة في بيئة واحدة أنظف للفهم.

4. ضبط دورة التشغيل

اضبط حقل "جدول التشغيل" على التكرار الذي تريده. اعتمادًا على الشاشة التي أنت عليها، يقرأ هذا الحقل "دورة التشغيل" أو "وضع التشغيل"؛ إنه نفس الإعداد، وتختلف صياغة التسمية عبر واجهة المستخدم. توفر الوثائق أمثلة ملموسة يمكنك محاكاتها: كل يوم أحد الساعة 11 مساءً، كل 6 ساعات، أو كل 8 ساعات.

بالنسبة لاختبار الانحدار الليلي، يحافظ التشغيل اليومي في وقت متأخر من الليل على مستوى الضوضاء منخفضًا ويساعد في اكتشاف المشكلات قبل بدء يوم العمل. أما بالنسبة لاختبار "الدخان" (smoke test) لبيئة الاختبار، فإن التشغيل كل 6 ساعات يوفر لك ملاحظات أسرع دون إجهاد البيئة.

5. اختر مكان تشغيله

اضبط حقل الـ Runner على الـ Runner المستضاف ذاتيًا الخاص بك. مثل حقل الجدول الزمني، يتم تسمية هذا الحقل بشكل غير متسق عبر الشاشات مثل "يعمل على"، "تشغيل على"، أو "يعمل على"؛ جميعها تعني نفس الشيء، الجهاز الذي يقوم بتنفيذ المجموعة. يظهر Apidog Cloud هنا أيضًا ولكنه قادم قريبًا، لذا اختر الـ Runner المستضاف ذاتيًا الخاص بك. إذا كنت قد سجلت عدة Runners للأغراض العامة، فاختر المحدد الذي تريده، على سبيل المثال Runner يقع داخل نفس الشبكة الخاصة الافتراضية (VPC) مثل واجهة برمجة التطبيقات الخاصة بك.

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

6. تفعيل الإشعارات

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

يدعم Apidog هذه القنوات بالاسم: Slack و Teams و Webhook و Jenkins والبريد الإلكتروني. بالنسبة للبريد الإلكتروني، يتم الإكمال التلقائي لعناوين أعضاء المشروع، ويمكنك كتابة عناوين غير الأعضاء يدويًا لجدول المناوبة أو صندوق بريد مشترك. يُرسل Slack الإخفاقات مباشرة إلى قناة فريقك؛ يتيح لك خيار Webhook توزيعها على أي شيء آخر تديره، من PagerDuty إلى نقطة نهاية مخصصة.

يمكنك أيضًا اختيار وقت إطلاق التنبيهات: بعد كل تشغيل، أو عند الفشل فقط. لمجموعة اختبار ليلية صحية، يحافظ خيار "الفشل فقط" على هدوء القناة حتى يصبح الأمر مهمًا. أثناء إطلاق غير مستقر، يمنحك خيار "كل تشغيل" نبضًا يؤكد أن المهمة تعمل بالفعل.

7. حفظ وتمكين

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

8. قراءة سجل التشغيل

بعد كل تشغيل، يتم تحميل النتائج تلقائيًا من الـ Runner مرة أخرى إلى الخادم. افتح قسم "المهام المجدولة - سجل التشغيل" في العميل لرؤيتها. هذا هو مسار التدقيق الخاص بك: أي تشغيل نجح، وأي فشل، وأي تأكيد تعطل، ومتى. عندما يصل تنبيه إلى Slack، فإن سجل التشغيل هو المكان الذي تذهب إليه لرؤية التفاصيل وراءه.

الإعدادات المتقدمة والاختلافات

بمجرد تشغيل المهمة الأساسية، هناك بعض الخيارات التي تجعلها أكثر قوة.

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

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

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

حدود الخطة. يعتمد عدد التشغيلات المجدولة التي تحصل عليها على اشتراكك. تشير الوثائق إلى صفحة أسعار Apidog للحصول على الأرقام الدقيقة، لذا تحقق من خطتك قبل تعيين تكرار تشغيل مكثف كل ساعة. إذا كنت بحاجة إلى تغطية أعمق للتجميع وأنماط الجدولة الأكثر تعقيدًا، فإن دليلنا المفصل حول المهام المجدولة المتقدمة يقدم المزيد، ويساعدك الدليل الشقيق حول المنطق الشرطي في سيناريوهات اختبار API على بناء سيناريوهات تستحق الجدولة في المقام الأول. بالنسبة للفرق التي تقوم بإعداد أول فحوصات تلقائية لها، فإن مقالة تشغيل اختبارات API الليلية في CI تتناسب جيدًا مع هذه المقالة.

أتمتة سير العمل باستخدام واجهة سطر الأوامر (CLI) من Apidog

واجهة المستخدم للمهام المجدولة هي أحد المسارات. واجهة سطر الأوامر (CLI) الخاصة بـ Apidog هي المسار الثالث، وهي مسار حقيقي: تقوم بتشغيل سيناريو محفوظ بدون واجهة رسومية، ثم تترك لـ cron أو مزود CI الخاص بك التعامل مع التكرار. لتوضيح الأمر، لا تحتوي واجهة سطر الأوامر على أمر جدولة أصلي؛ فالجدولة تتم خارج Apidog في الأداة التي تثق بها بالفعل لـ cron.

قم بالتثبيت والمصادقة، ثم قم بتشغيل سيناريو بمعرفه مقابل بيئة مختارة. يغطي دليل تثبيت Apidog CLI إعداد الرمز المميز بالكامل:

npm install -g apidog-cli
apidog login --with-token <YOUR_TOKEN>
apidog run --access-token $APIDOG_ACCESS_TOKEN -t <SCENARIO_ID> -e <ENV_ID> -r cli,junit

هنا `-t` هو معرف سيناريو الاختبار، `-e` هو معرف البيئة، و `-r` هو المُبلغ (مثل `cli` أو `html` أو `junit`، مفصولة بفاصلة لعدة أنواع). لتشغيلها ليلاً باستخدام cron، أضف سطرًا واحدًا:

0 2 * * * cd /srv/api-tests && apidog run --access-token $APIDOG_ACCESS_TOKEN -t 4471 -e 88 -r junit >> run.log 2>&1

أو قم بتشغيله من وظيفة GitHub Actions مجدولة. في كلتا الحالتين، يسقط تقرير JUnit في لوحات معلومات خط الأنابيب (pipeline dashboards) الحالية لديك. راجع Apidog CLI في خط أنابيب CI/CD الخاص بك للإعداد الكامل، بما في ذلك cron ومشغلات جدولة GitHub Actions.

الأسئلة الشائعة

هل يمكنني تشغيل الاختبارات المجدولة على Apidog Cloud اليوم؟ ليس بعد. يدرج هدف الـ Runner خدمة Apidog Cloud تحت مسمى "قريبًا"، لذا فإن الـ Runner المستضاف ذاتيًا هو الجهاز التنفيذي الوحيد العامل حاليًا. قم بتسجيل Runner أولاً، ثم حدده في المهمة.

كم مرة يمكن تشغيل المهام المجدولة؟ بقدر ما تسمح خطتك. التكرار نفسه مرن، مع أمثلة موثقة مثل كل 6 ساعات أو كل يوم أحد الساعة 11 مساءً، ولكن عدد التشغيلات المجدولة يحدده اشتراكك. تحقق من صفحة أسعار Apidog لمعرفة الحد الدقيق لطبقتك بدلاً من افتراض رقم.

كيف أحصل على إشعار فقط عند فشل اختبار؟ في إعدادات الإشعارات للمهمة، اختر خيار "الفشل فقط" بدلاً من "كل تشغيل"، ثم أضف قناة: Slack، Teams، Webhook، Jenkins، أو البريد الإلكتروني. هذا يحافظ على هدوء قناتك في الليالي الناجحة ويجعلها صاخبة عندما يحدث خطأ. اربطها بـ فحص صحة API خفيف الوزن للحصول على إشارة حيوية سريعة جنبًا إلى جنب مع مجموعة اختبار الانحدار الأعمق.

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

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

خاتمة

تحول الاختبارات المجدولة عبارة "نعتقد أن واجهة برمجة التطبيقات تعمل" إلى "نحن نعرف، وكنا سنعلم حتى الآن لو لم تكن تعمل". أنشئ سيناريوهاتك مرة واحدة، سجل Runner مستضاف ذاتيًا، حدد دورة تشغيل، اربط Slack أو البريد الإلكتروني عند الفشل، ودعها تعمل بينما تنام. عندما تريد نفس الفحوصات داخل خط أنابيب، توفر لك CLI بالإضافة إلى cron المسار الثالث بدون أي أدوات إضافية. قم بتنزيل Apidog لإعداد أول مجموعة اختبار انحدار مجدولة لك. إنه مجاني للبدء، ولا يتطلب بطاقة ائتمان.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات