اختبارات متصفح حقيقية داخل خط إنتاج GitLab CI
يتكامل بسلاسة مع محررات أندرويد ومحرراتك المدعومة بالذكاء الاصطناعي
متغيّران، بلا ملف إعداد
اضبط TESTSPRITE_API_KEY كمتغيّر تكامل مستمر مُقنَّع فتتحقق الأداة من الهوية عبر البيئة. ولا يُكتب شيء في ~/.testsprite، وهو المطلوب في منفّذ عابر.
بلا متصفحات في منفّذك
يجري التنفيذ في سحابة TestSprite على متصفحات حقيقية، فلا تثبّت المهمة سوى الأداة. وهذا يزيل أبطأ خطوة في خط إنتاج بارد: تنزيل ملفات المتصفح أو تخزينها مؤقتًا.
تقرير JUnit يعرضه GitLab
يكتب --report junit --report-file <مسار> التقرير. وجّه artifacts:reports:junit إليه فيعرض GitLab نتائج كل اختبار داخل أداة طلب الدمج.
رمز الخروج هو البوابة
يحجب --wait حتى تنتهي كل عمليات التشغيل، فيعني الرمز 0 أن كل الاختبارات نجحت فعلًا لا أنها أُرسلت بنجاح. وتميّز الرموز الموثّقة بين اختبار فاشل (1) ومشكلة مصادقة (3) ورصيد نافد (12).
احمِ طلب الدمج بمتصفح حقيقي
تؤكد اختبارات الوحدة أن الشيفرة تفعل ما كُتبت لأجله. أما أن ما توشك على دمجه يعمل فعلًا، فلا يؤكده إلا تشغيل على تطبيق المراجعة لديك.
مصمّم للفرق التي تُطلق على GitLab
يدعم تطبيقات المراجعة
وجّه المشروع إلى رابط تطبيق المراجعة قبل التشغيل: testsprite project update <id> --url "$CI_ENVIRONMENT_URL". فتبقى المجموعة كما هي بينما يتغيّر الهدف مع كل طلب دمج.
ثبّت الإصدار
ثبّت @testsprite/testsprite-cli@<version> بدل اتّباع latest، كي لا يغيّر إصدار جديد سلوك خط إنتاجك دون التزام.
الواجهة الأمامية والخلفية ببوابة واحدة
اجمع مسارات الويب واختبارات عقود واجهات البرمجة في قائمة اختبارات وشغّلها عبر testsprite testlist run، مع ربط كل مشروع ببيئته.
نسخة مجتمعية مجانية
نوفّر نسخة مجتمعية مجانية، لتكون في متناول الجميع.
موثوق به من قبل الشركات حول العالم
"عمل رائع! MCP رائع جدًا من فريق TestSprite! لتطبيقات أندرويد الخاصة بنا، يكمل الترميز بالذكاء الاصطناعي + الاختبار بالذكاء الاصطناعي الدورة ويسرع الإصدارات المستقرة."
"بالنسبة لأندرويد، اختبارات TestSprite التي تم إنشاؤها نظيفة وموثوقة. تدفقات Appium سهلة التوسيع والتصحيح، والتشغيلات المجدولة تحافظ على تغطية أجهزتنا سليمة."
"أتمتة TestSprite قللت بشكل كبير من اختبار ضمان الجودة اليدوي لتطبيقات أندرويد لدينا. يكتشف المطورون أخطاء الجوال ويحلونها مبكرًا، مما يحافظ على جدول إصداراتنا في موعده."
الأسئلة الشائعة
هل يعمل تكامل تطبيق GitHub مع GitLab؟
لا: ذلك التكامل يستمع إلى أحداث نشر GitHub وهو خاص به. أما على GitLab فتقود التشغيل من خط إنتاجك عبر سطر الأوامر، ولا يحتاج سوى TESTSPRITE_API_KEY في البيئة.
كيف أعرض النتائج داخل طلب الدمج؟
اكتب التقرير عبر --report junit --report-file testsprite-junit.xml وصرّح به في artifacts:reports:junit. عندها يعرض GitLab نتائج كل اختبار داخل أداة طلب الدمج.
كيف أختبر تطبيق مراجعة يتغيّر رابطه في كل مرة؟
حدّث رابط المشروع كأول خطوة في المهمة باستخدام متغيّر GitLab نفسه: testsprite project update <id> --url "$CI_ENVIRONMENT_URL". فتبقى المجموعة ثابتة بينما يتحرك الهدف.
وماذا لو كان تطبيقي يتطلب تسجيل دخول؟
احفظ حساب اختبار في المشروع عبر --username و--password-file؛ والمعاملان مطلوبان معًا. وبدونهما لا يرى الاستكشاف والتشغيل سوى الصفحات العامة، وهو تحذير لا إخفاق.
هل الأداة مفتوحة المصدر؟
نعم: واجهة سطر الأوامر مفتوحة المصدر برخصة Apache-2.0 وتُثبَّت مجانًا من npm. وتتطلب Node 20.19+ أو 22.13+ أو 24+. ويجري تنفيذ الاختبارات في السحابة ويستهلك أرصدة مساحة العمل.
هل أستطيع تجربة الأوامر دون إنفاق أرصدة؟
نعم. يمرّ --dry-run على مسار الشيفرة كاملًا دون اتصال ببيانات جاهزة، أما test scaffold وtest lint فلا يلمسان الشبكة ولا بيانات اعتمادك.