هناك العديد من المقالات على الإنترنت حول كيفية استخدام SpecFlow، وكيفية تكوين TFS لإجراء الاختبارات، ولكن لا يوجد مقال يحتوي على جميع الجوانب. في هذه المقالة، سأخبرك كيف يمكنك جعل تشغيل البرامج النصية SpecFlow وتحريرها مناسبًا للجميع.
ستتعلم أسفل القطع كيفية الحصول على:
- تشغيل الاختبارات من TFS
- الربط التلقائي للبرامج النصية لحالات الاختبار في TFS
- قم دائمًا بتحديث محتوى حالات الاختبار في TFS
- القدرة على تحرير البرامج النصية مباشرة في نظام التحكم في الإصدار من قبل المختبرين
قبل التاريخ
لقد واجهنا مهمة أتمتة اختبار التطبيق باستخدام نهج BDD. نظرًا لأن أساس نظام تتبع المهام في شركتنا هو TFS، فقد كانت لدي صورة في ذهني حيث تكون خطوات البرنامج النصي SpecFlow هي خطوات حالات الاختبار في TFS، ويتم إطلاق الاختبارات من خطط الاختبار. أدناه هو كيف قمت بتنفيذ ذلك.
ماذا نحتاج:
- مشروع مع اختبارات على SpecFlow
- خادم Azure DevOps (المعروف أيضًا باسم خادم أساس الفريق)
- أداة لمزامنة البرامج النصية SpecFlow مع حالات الاختبار في TFS
تعديل
1. إنشاء مشروع مبني على الاختبارات
كل شيء بسيط هنا، تجميع ونشر القطع الأثرية. المزيد عن المهمة الثالثة لاحقًا.
2. إنشاء إصدار لإجراء الاختبارات
إنشاء إصدار بمهمة واحدة - اختبار Visual Studio
في هذه الحالة، يتم تكوين المهمة لتشغيل الاختبارات يدويًا من خطة الاختبار
3. تزامن حالات الاختبار
نحن نعلم أن Visual Studio يسمح لك بربط طرق الاختبار بحالات الاختبار في TFS وتشغيلها من خطط الاختبار. من أجل عدم القيام بذلك يدويًا، وأيضًا من أجل مزامنة محتوى البرامج النصية، قمت بكتابة تطبيق وحدة تحكم بسيط
كيفية استخدام ميزة المزامنة
أضف مساحة الاسم واللغة إلى رأس ملف الميزة:
#language:en
@Namespace:Application.Autotests
Feature: Log to application
* يجب أن تتطابق مساحة الاسم مع اسم ملف .dll الذي يحتوي على طرق الاختبار
نقوم بإنشاء حالات اختبار فارغة في TFS ونضيف علامات بمعرفها إلى البرامج النصية:
@2124573 @posistive
Scenario: Successful authorization
Given I on authorization page
And I enter:
| Login | Password |
| user | pass |
When I press Login button
Then Browser redirect on Home page
إطلاق ميزة المزامنة:
FeatureSync.exe -f C:FolderWithFeatures -s https://tfs.server.com/collection -t 6ppjfdysk-your-tfs-token-2d7sjwfbj7rzba
في حالتنا، يتم الإطلاق بعد بناء المشروع مع الاختبارات:
نتيجة المزامنة
تتم مزامنة خطوات البرنامج النصي SpecFlow وتعيين حالة الأتمتة
4. وضع خطة الاختبار
نقوم بإنشاء خطة اختبار، ونضيف حالاتنا الآلية إليها، ونحدد البناء والإصدار في الإعدادات
5. إجراء الاختبارات
حدد الاختبار المطلوب في خطة الاختبار وقم بتشغيله.
اختتام
مزايا هذا التكوين:
- يمكن لأي مختبر فتح ملف الميزة في نموذج الويب للتحكم في الإصدار وتحريره وستدخل التغييرات حيز التنفيذ فورًا بعد الإنشاء
- يمكنك إجراء الاختبارات بشكل فردي في أي وقت
- نموذج اختبار شفاف - نحن نعرف دائمًا ما يفعله الاختبار الذي أطلقناه.
المصدر: www.habr.com