صِف → مُختبَر
اكتب جملة واحدة بالعربية الواضحة. تقرأ Vera صفحتك الحيّة وتكتب خطوات حقيقية ناجحة — كل محدِّد مُثبَت لا مُخمَّن.
تفهم Vera الرحلات والقواعد التي يعتمد عليها عملك، وتتحقّق منها باستمرار عبر منتجك، وتُظهر لفريقك متى يصنع تغييرٌ ما خطرًا على الإصدار — قبل أن يصل إلى عملائك.
بدون تسجيل و بدون بطاقة. اختبار واحد يكتبه الذكاء الاصطناعي ويُنفَّذ في Chromium حقيقي.
واعية بالمتطلبات · تنفيذ حقيقي · تدفّقات متعدّدة الأدوار · الأداء · إشارات أمنية · جاهزة للتكامل المستمر
«لكن كيف تعرف أن اختبارًا كتبه الذكاء الاصطناعي يختبر شيئًا فعلًا؟» — الجواب ↓
شاهدها تعمل
ست مهام تجبرك أغلب أدوات الاختبار على توصيلها يدويًا. في Vera هي جملة واحدة، أو نقرة، أو أمر واحد.
اكتب جملة واحدة بالعربية الواضحة. تقرأ Vera صفحتك الحيّة وتكتب خطوات حقيقية ناجحة — كل محدِّد مُثبَت لا مُخمَّن.
حين يتعفّن محدِّد أثناء التشغيل، تلتقط Vera لقطة DOM، وتجد المحدِّد الصحيح، وتعيد المحاولة، وتسجّل الإصلاح. يستمر التشغيل — وتُسجَّل النتيجة نجاح بعد معالجة، ولا تُدمج أبدًا في نجاح نظيف.
ينفّذ الوكيل الاختبارات بجوار localhost تمامًا — بلا أنفاق وبلا وصول لقاعدة البيانات. والجوّال الأصلي أيضًا، عبر Appium.
امسح أي صفحة بحثًا عن الإتاحة و SEO وترويسات الأمان ومؤشرات الأداء — تُحصى المشكلات لكل صفحة وتُرتَّب حسب الشدّة.
ارفع CSV، وكل صف يشغّل الاختبار بقيمه الخاصة — تدفّق واحد مؤلَّف يصير مصفوفة كاملة من تشغيلات حقيقية.
استورِد من الأدوات التي تستخدمها بالفعل، وصدّر أي اختبار إلى كود قابل للتشغيل. مجموعتك ليست محبوسة في Vera أبدًا.
لماذا Vera
كل فريق يريد تغطية. وقلّة تستطيع الاستمرار — لأن الاختبارات نفسها كود، والكود يتعفّن.
محدِّدات وانتظارات وبيانات تجهيز ومصادقة — محلّل الجودة يستطيع وصف التدفق لكنه لا يستطيع برمجته، فلا تُكتَب الاختبارات أبدًا.
فئة أُعيدت تسميتها أو DOM أُعيد هيكلته يكسران المجموعات بصمت. تتجاوز الصيانة قيمة الاختبارات بهدوء.
حين يصبح الأحمر يعني «غالبًا لا شيء»، تصبح المجموعة عبئًا. يتوقّف الناس عن قراءتها — والثقة بها.
ابدأ من الأعمال
لا من ملف اختبار فارغ. سلّمها وثيقة المتطلّبات التي لديك أصلًا، فتقترح القواعد التي يجب أن يلتزم بها منتجك — وكل قاعدة تحمل الصفحة والبند اللذين جاءت منهما.
وثيقة متطلّبات بصيغة .docx أو .pdf — أو مواصفة OpenAPI أو مجموعة Postman أو شفرتك المصدرية. لا صيغة جديدة تكتبها.
←كل قاعدة مقترحة تحتفظ بالوثيقة والقسم والمقتطف الذي قُرئت منه. أنت تراجع اقتباسًا، لا تلخيصًا.
←لا يُولَّد شيء بناءً على قاعدة مقترحة. الاعتماد فعلٌ بشري، وهو الباب الوحيد.
←تُخطَّط الاختبارات وتُقيَّم مقابل القواعد التي اعتمدتها — فتعني «مغطّاة» مغطّاة مقابل متطلّباتك، لا مقابل ما يفعله التطبيق صدفةً.
وتخبرك بما لم تقرأه. تستخرج Vera المتطلّبات من بنية تراها فعلًا — معايير القبول، والبنود المرقّمة، وGherkin، وعبارات must/shall — وتُبلغ عن السطور التي عدّتها نثرًا بدل أن تخمّنها. الوثيقة المكتوبة سردًا متدفّقًا ستُنتج قواعد قليلة، والاستيراد يقول ذلك بدل أن يعيد قائمة قصيرة بصمت.
والمسح الضوئي يُرفض لا يُخمَّن. ملف PDF بلا طبقة نصية هو صور لنص. لا تُجري Vera تعرّفًا ضوئيًا ولن تتظاهر بغير ذلك — ترفض الملف وتطلب منك تصديره بصيغة تحمل نصًا.
والقاعدة المقروءة من وثيقة يمكن أن تناقض تطبيقك العامل — وهو ما لا تستطيعه قاعدة مستنتَجة من الشفرة، لأنها قُرئت من التنفيذ وترث عيوبه. لماذا يحسم هذا الفرق ما يستطيع اختبارٌ إثباته ←
المخاطر والثقة في الإصدار
لا تخمّن Vera مدى حرج شيءٍ ما. يضبط إنسانٌ العواملَ، ويتبع التصنيفُ منها، ويصل التصنيف إلى كل ما يرتبط بتلك القاعدة — فترى قبل الاعتماد ما الذي سيبدأ في الحجب.
الأسباب المسجّلة معه: blast-dominant وirreversible-at-ceiling. ليس رقمًا أنتجه نموذج — بل حكمٌ وقّعه أحدهم.
القاعدة: «لا يجوز أن يطلب عميلٌ استرداد طلبٍ لا يملكه.» واعتماد P0 يرفع هذه الثلاثة وأي مجموعة تحجب بناءً عليها.
ترى المدى قبل الاعتماد لا بعده. فالاعتماد الذي يبدأ بحجب الإصدارات بصمت لا يُتّخذ مرتين.
ولا تدّعي Vera أنها تراقب مستودعك. إنها تُظهر ما سيمسّه تغييرٌ في هذه القاعدة. وحيثما تُبلغ عن اختبارات تأثّرت بتغييرٍ مسجَّل، فالقائمة الفارغة تعني أنه لم يُسجَّل تغيير — وهذا غير «لم يتغيّر شيء»، ولن تدع Vera الاثنين يُقرآن سواءً.
ولا يساوي التصنيف أكثر مما تساويه الاختبارات التي يصل إليها، ولهذا فالاختبار الذي لا يمكن أن يفشل لا يُحتسب مغطّيًا لشيء ←
تدفّقات كاملة
مثّل العميل وموظّف الدعم ومعتمِد المالية كفاعلين لكلٍّ منهم مشروعه ودوره وبيئته. تُشغّل Vera عمليات التسليم بينهم وتحمل ما تعلّمته مرحلةٌ إلى التي تليها.
التسليم · نشر العميل refundId = REF-4471 → وتحقّق منه كلٌّ من الدعم والمالية
التسليم هو الدليل. يسجّل كل تشغيل ما نشرته كل مرحلة، فتصبح «المرجع الذي حصل عليه العميل هو نفسه الذي اعتمدته المالية» شيئًا تقرأه من التقرير لا شيئًا تأمل أنه تحقّق. والقيمة الموسومة حسّاسة تُقنَّع في ذلك السجل وتبقى حقيقية في الذاكرة للمرحلة التالية.
ويمكن للفاعلين أن يعملوا في الوقت نفسه. وحيث يكون في التدفّق أشخاص مستقلّون فعلًا، تعمل المراحل تزامنيًا وتنتظر المرحلةُ التابعة الجميعَ — والتزامن اختياري لكل سيناريو، فالتدفّق المكتوب تسلسليًا لا يبدأ أبدًا بتشغيل فاعلَين معًا بصمت. أما التسابقان اللذان يجعلانه غير آمن — مرحلتان تنشران المتغيّر نفسه، أو فاعل واحد في مرحلتين متزامنتين — فيُرفضان عند حفظ السيناريو، لا في تصحيح الأخطاء الثالثة فجرًا.
مبنيّة للمنتجات التي ينتقل فيها العمل بين الأيدي: الأسواق، وتدفّقات الاعتماد، وعمليات التسليم المنظَّمة أو التشغيلية. وإن كان العطل لا يظهر إلا للشخص الثالث في السلسلة، فالاختبار بفاعل واحد لم يكن ليجده أصلًا.
أين تناسب
الآلية نفسها موجَّهة إلى ثلاثة أنماط من الأعمال. وهذه تمارين نمذجة تنسخها لا دراسات حالة — يسمّي كلٌّ منها الأدوار، والتسليم بينها، والجملة الواحدة التي على إنسانٍ اعتمادها قبل أن يُولَّد منها شيء.
الجملة بالخطّ الأحادي هي وحدة العمل الحقيقية. تدخل دفتر قواعد المشروع، ويعتمدها إنسان، ثم تُولَّد الاختبارات من الجملة المعتمَدة لا من قراءة نموذجٍ لواجهتك. وهذا هو الفرق بين اختبارٍ يرمّز ما يجب أن يفعله المنتج وآخر يرمّز ما يفعله المنتج الآن — والثاني ينجح إلى الأبد، بما في ذلك يوم كان السلوك خاطئًا.
ولا شيء من هذه إصدارٌ قطاعي، ولا يوجد ما يُفعَّل. إنها الأدوار والبيئات والقواعد نفسها التي تصفها بقية هذه الصفحة، مرتَّبةً كما يعمل ذلك القطاع أصلًا.
تغطية الرحلات الحرجة
لا «كم اختبارًا لدينا؟» — فهذا الرقم يرتفع بينما تبقى عملية الدفع بلا حماية. ترسم Vera خريطة الرحلات التي يعتمد عليها عملك، وتخبرك لكل رحلة إن كان هناك ما يحرسها فعلًا.
«مغطّاة» لا تعني «ناجحة». تكون الرحلة مغطّاة حين تكون الاختبارات المرتبطة بها موجودة وقد نُفِّذت — أما نجاحها فهو عمود الحالة، وأما إن كانت تتحقّق من شيء أصلًا فسؤال ثالث. «موافقة المالية» أعلاه مغطّاة وفاشلة؛ وهذا ليس تناقضًا، بل هو المقصود. نسبة واحدة مدمجة كانت ستخفي الثلاثة جميعًا.
الرحلة التي حُذف أحد اختباراتها تُقرأ جزئية، ولا تبدو أنحف بصمت: يبقى الرابط المكسور ظاهرًا حتى يقرّر بشأنه أحد.
تستطيع Vera أن تقترح رحلات بمسح تطبيقك — وتبقى مقترحة حتى يؤكّدها إنسان. والتخمين غير المؤكَّد لا يُحتسب تغطيةً أبدًا، ولا يدخل المقام. كيف تُثبِت Vera أن اختبارًا يختبر شيئًا ←
السؤال الصعب
الاختبار الذي ينجح مهما فعل تطبيقك أسوأ من لا اختبار — فهو يُبلِغ بالأخضر ويُحتسَب تغطية. وبين الاختبار المُولَّد وهذه الكلمة أربع بوّابات. والثالثة هي المهمّة.
تُخطِّط Vera الـDOM الحيّ أولًا، فيكتب النموذج مقابل محدِّدات تحقّقت من وجودها.
بلا تفاعل، أو بلا حكم، أو بخطوة ينقصها محدِّدها — تُلتقَط قبل أن تراها.
تُعيد Vera تشغيل الاختبار بتوقّعات مقلوبة. وكل ضبط يجب أن يفشل. فإن نجح في الحالتين، فالأحكام خاملة — وVera تقولها صراحة.
لا تُحتسَب القاعدة مغطّاة إلا بعد أن يعمل عليها اختبار أثبت أنه قادر على الفشل.
لدى Vera حالة أسوأ من غير مختبَر، هي مختبَر باختبار لا يثبت شيئًا — ويُبلَّغ عنها بوصفها مشكلة، لا تُدسّ داخل نسبة مئوية.
لمن هي
كل ما تحتاجه لتتوقّف عن شحن الأعطال، دون كتابة أو صيانة كود اختبار.
ضوابط بمستوى المؤسسات فوق المحرك نفسه — ليعني الأخضر أخضر ويعني الأحمر حقيقيًا.
ابدأ الآن
أرِ Vera ما يعتمد عليه عملك وابدأ بحمايته قبل الإصدار القادم. خطة مجانية، مفتاحك الخاص، بلا بطاقة ائتمان.