Vision SDKوصول مبكر

اختبارات Playwright الخاصة بك، يتحقق منها Delta-QA. سطر واحد لكل صفحة تريد التحقق منها.

ترسل ‎@delta-qa/vision إلى Delta-QA كل صفحة تفحصها اختبارات Playwright لديك. يقارنها Delta-QA بمرجعها عنصرًا بعنصر ويخبرك أي عنصر تغيّر. تعيش اختبارات الانحدار المكتوبة بالشيفرة البرمجية والسيناريوهات المسجَّلة بدون برمجة في مساحة العمل نفسها: المراجع نفسها، والمراجعة نفسها، والتقرير نفسه.

تتوفر حزمة Vision SDK أولًا بالوصول المبكر: تواصل معنا لاستخدامها في اختبارات Playwright لديك.

ثلاث خطوات في اختباراتك

  1. أنشئ مفتاح API في مساحة عمل Delta-QA واحفظه في سرّ ضمن CI. تقرأه الحزمة من DELTAQA_API_KEY؛ ومساحة العمل هي مساحة المفتاح.
  2. أضف check حيث يجب أن يتحقق اختبارك من الصفحة: vision.check("Payment"). اسمه يربطه بمرجعه.
  3. ادفع التغييرات. في التشغيل الأول، يكون كل اختبار «جديدًا»: تصبح لقطته الأولى المرجع. وفي التشغيل الثاني، إذا لم يتغير الموقع، لا يُبلَّغ عن أي اختلاف.
import { test } from "@playwright/test";
import { Vision } from "@delta-qa/vision";

const vision = new Vision(); // reads DELTAQA_API_KEY

test("Checkout", async ({ page }) => {
  await vision.open(page, { id: "checkout", name: "Checkout" });
  await page.goto("https://shop.example.com/checkout");
  await vision.check("Payment");
  await vision.close(); // fails the test on an unreviewed difference
});

لا تعرض الحزمة إلا الإعدادات التي يطبقها Delta-QA: لا يُقبل أي إعداد بلا أثر. الوسم ووسم المرجع اختياريان؛ وبدونهما تستنتجهما الحزمة.

مقارنة عنصرًا بعنصر، لا بكسلات

في كل فحص، ترسل حزمة SDK الصفحة (HTML ونافذة العرض) والموارد التي حمّلها المتصفح. يعيد Delta-QA فتح الصفحة ويقارن عناصرها بعناصر المرجع، كخطوة في سيناريو: يذكر التقرير أي عنصر تغيّر — زر «ادفع» من الأزرق إلى الأخضر — لا مساحة من البكسلات.

الفرق غير المراجَع يُفشل اختبار Playwright، ويعرض سجل CI رابط الدفعة. تفتح الخطوة وتقرأ التقرير وتقرر: «سلوك متوقع» أو «Bug».

يُعرَّف كل مورد ببصمته: المورد الموجود أصلًا في مساحة عملك لا يُرسَل مجددًا. وفي التشغيل الثاني لمجموعة اختبارات، مع بقاء الموقع دون تغيير، لا يخرج سوى HTML والبصمات.

مرجع واحد لكل فرع، دون دمج تلقائي

  • يُستنتج الوسم من فرع git لديك أو من CI، ووسم المرجع من هدف طلب الدمج، وإلا main. يُقارَن الفرع الجديد بـ main منذ تشغيله الأول، وتعرض الدفعة «مقارنة بـ main».
  • «سلوك متوقع» يُطبَّق على الوسوم التي تحددها، و«هذا الوسم فقط» افتراضيًا: لا ترى الفروع الأخرى أي تغيير.
  • يمكن تصفية سجل الاختبار بحسب البيئة والوسم؛ ويمكن تعيين أي فحص مرجعًا، للوسوم التي تحددها.
  • تشكّل اختبارات تشغيل CI واحد دفعة تتشاركها الأجهزة العاملة بالتوازي؛ وتُقرأ قائمة الدفعات كما يُقرأ CI لديك.

أنشئ سيناريوهاتك بوكيل ذكاء اصطناعي: خادم MCP

أسئلة حول Vision SDK

ما الأطر التي تغطيها Vision SDK؟
تغطي Playwright بلغتي TypeScript وJavaScript على Chromium. وستتبعها Cypress وWebdriverIO وFirefox وWebKit. يتم التحقق من سيناريوهاتك المسجَّلة بدون برمجة في مساحة عمل Delta-QA نفسها.
هل عليّ إعادة كتابة اختبارات Playwright؟
لا: تضيف check حيث يجب التحقق من صفحة، ويبقى باقي الاختبار كما هو. اسم الـ check يربطه بمرجعه: وجود check باسم مكرر في اختبار واحد يُفشل التشغيل مع تسمية التكرار.
ما البيانات التي ترسلها حزمة SDK؟
الصفحة المختبَرة (HTML ونافذة العرض) والموارد التي حمّلها المتصفح، عدا الفيديو والصوت. لا تُستخدم إلا للمقارنة، وتبقى في مساحة عملك. لا تختبر على بيانات إنتاج شخصية: هذا اختيارك.
هل تتغير سيناريوهاتي بدون برمجة؟
لا: يبقى التسجيل وإعادة التشغيل والتقرير كما هي. ويمكن الآن تشغيل سيناريو تحت وسم، و«سلوك متوقع» يُطبَّق على الوسوم التي تحددها.
هل يمكنني استخدامها من لغة أخرى؟
ستكون حزمة SDK بلغتي TypeScript وJavaScript. وستُضاف لغة أخرى إن طلبها المستخدمون.

دع Delta-QA يتحقق من اختبارات Playwright لديك

لاستخدام Vision، تواصل معنا: تتوفر أولًا بالوصول المبكر. أخبرنا بالاختبارات التي تريد التحقق منها، ونفتح لك الوصول.