عن Gherkin هنا.
يخدم Gherkin غرضين – التوثيق والاختبارات الآلية. والثالثة هي ميزة إضافية – عندما يصرخ باللون الأحمر فهو يتحدث إليك، ويخبرك ما هي الشيفرة التي يجب عليك كتابتها. تساعدك 10 كلمات رئيسية في كتابة الميزات واختبارات القبول/سيناريوهات/أمثلة.
أطلق العنان لإمكاناتك كمطوّر معتمد من Scrum Developer® من خلال دورتنا التدريبية الشاملة لشهادة CSD. اكتسب خبرة عملية ومهارات قيّمة للتفوق في تطوير البرمجيات الرشيقة.سجل اليوم
لنفترض أننا نرغب في تطوير تطبيق Carpool لمشاركة مشاويرنا مع أشخاص آخرين داخل المؤسسة لتقليل الازدحام وتوفير المال.
نحتاج إلى الميزات التالية في تطبيقنا.
تبدو الميزات المذكورة أعلاه كبيرة ونحتاج إلى تقسيمها للحصول على عناصر أصغر لتسليمها بشكل أسرع. هناك طرق مختلفة لتقسيم الميزات الكبيرة إلى وظائف أصغر قابلة للإصدار مثل التقسيم على أساس سير العمل والتشغيل وقواعد العمل وأنواع البيانات والسناريوهات وما إلى ذلك. لن أتناولها هنا ولكنني سآخذ مثالاً واحداً لشرح ATDD هنا.
لنفترض أننا نحتاج إلى الوظائف التالية لإكمال ميزة “مشاركة الركوب”.
ومع ذلك، تبدو كبيرة ولكن هناك احتمالات لتقسيمها أكثر من ذلك كما هو موضح أدناه ل “نشر رحلة جديدة”
لنأخذ الوظيفة الأولى كمثال لكتابة ميزتنا الأولى.
الميزة: النشر السريع
لمشاركة سيارتي
بصفتي مالك سيارة
أريد نشرها على شبكة الإنترانت مع تفاصيل مثل المصدر والوجهة والوقت والبريد الإلكتروني ورقم الهاتف
السيناريو: يقوم الموظف بإدخال تفاصيل رحلة صالحة للمشاركة
إذا أراد الموظف “نافين” تقديم مصدر ووجهة ووقت “كاماناهالي” و”هيبال” و”5.30 مساءً”
والبريد الإلكتروني ل “نافين” هو “naveenhome@gmail.com” ورقم الهاتف هو “+91 9810547500”
عندما تنقر “نافين” على “مشاركة”
ثم تتم إضافة الركوب ويحصل “نافين” على رسالة “تمت مشاركة الركوب.” مع زر “موافق”
ويتم إعادة توجيه “نافين” إلى الصفحة الرئيسية بالنقر فوق الزر “موافق”
ويمكن ل “نافين” رؤية مشواره في أعلى الصفحة “الرئيسية”
السيناريو: يقوم الموظف بإدخال تفاصيل الرحلة للمشاركة بدون معرف البريد الإلكتروني
إذا أراد الموظف “نافين” إرسال مصدر ووجهة ووقت “كماناهالي” و”هيبال” و”5.30 مساءً”
والبريد الإلكتروني ل “نافين” هو ” ” ورقم الهاتف هو “+91 9810547500”
عندما ينقر “نافين” على “مشاركة”
ثم يحصل “نافين” على رسالة “يرجى إضافة معرف بريد إلكتروني صالح”
ولا يتم حفظ الركوب
سوف أستخدم Visual Studio 2015 مع C# وسأستخدم مشروع مكتبة الفصل الدراسي للبدء به. سأشرح كيفية التدرب أثناء إنشاء تطبيقات MVC مع سيلينيوم وواجهة المستخدم المشفرة في المدونات القادمة.
افتح Visual Studio وانتقل إلى الأدوات -> الإضافات والتحديثات وابحث عن “SpecFlow لـ Visual Studio 2015”
بعد التثبيت، أعد تشغيل Visual Studio وأنشئ مشروعك بالنقر على “مشروع جديد”. سأسميه “كاربول”.
أضف مرجع SpecFlow و Nunit إلى مشروعك عبر “إدارة حزم NuGet” كما هو موضح أدناه.
أضف ملف الميزة الأولى إلى المشروع -> إضافة -> عناصر جديدة وسترى خيار إنشاء ملف ميزة جديد كما هو موضح أدناه وتسميته QuickPost.feature. أزل كل المحتوى الافتراضي من ملف الميزة وانسخ الميزة المكتوبة أعلاه.
انقر بزر الفأرة الأيمن على ملف الميزة وستحصل على خيار “إنشاء تعريفات الخطوة”. ستحصل على الشاشة أدناه وانقر على “إنشاء” هنا. سيطلب منك حفظ ملف الخطوة في الموقع الافتراضي (نفس المجلد الذي يوجد فيه ملف الميزة). قم بحفظه في الموقع الافتراضي وستجد اسم الملف “QuickPostSteps.cs” في مستكشف الحلول.
افتح باب النجاح في التكنولوجيا. ابدأ رحلتك لتصبح مهندس ديف أوبس مرغوب فيه في عام 2025 مع خارطة الطريق التي يقودها الخبراء لدينا، استكشف اليوم!
لاختبار السيناريو الخاص بنا، نحتاج إلى إنشاء تعريفات الخطوات التي تربط العبارات في سيناريو الاختبار برمز التطبيق. يقوم SpecFlow تلقائيًا بإنشاء هيكل عظمي لرمز الأتمتة الذي يمكننا توسيعه حسب الضرورة. الخطوات ليست ربطًا واحدًا لواحد وتستخدم تعبيرًا عاديًا. هذا يعني أنه إذا كانت هناك خطوات متشابهة بنفس العبارة في ملف ميزة آخر أو سيناريو آخر، فسيتم إعادة استخدامها. تشرح دورة حياة ATDD أدناه الخطوات المتضمنة في ممارسة منهجية ATDD حيث تتطلب بعض الخطوات مشاركة الأعمال والباقي يمكن أن يقوم بها فريق التطوير.
انتقل إلى اختبار -> نافذة -> مستكشف الاختبار وستجد اختباراتك مدرجة في مستكشف الاختبار. إذا لم يظهر اختبارك فهذا يعني أنك بحاجة إلى تثبيت ملحق يسمى “Nunit 3 Test Adaptor”. لتثبيته انتقل إلى أدوات -> الإضافات والتحديثات وابحث عن “Nunit 3 Test Adaptor”. بعد التثبيت، أعد تشغيل الاستوديو المرئي وقم ببناء الحل الخاص بك لرؤية اختباراتك في مستكشف الاختبار.
سأستخدم Nunit للتأكيد وسأشرح كيفية اجتياز السيناريو بإضافة الحد الأدنى من التعليمات البرمجية فقط لتوضيح قدرة SpecFlow.
أضف صنف نموذج يسمى “Ride.cs”
أضف فئة منطق عمل أخرى تسمى “RideBLLL.cs”
قم بإجراء تغييرات في ملف الخطوات على النحو التالي: –
قم ببناء الحل الخاص بك مرة أخرى، انتقل إلى مستكشف الاختبار، وانقر على تشغيل الكل. سيجتاز الاختبار بنجاح كما هو موضح أدناه.
جربه بنفسك. إذا علقت في أي مكان، تواصل معي. سأكون سعيدًا بمساعدتك.
نافين هو مدرب رشيق محترف ويعمل بشكل مستقل منذ فترة طويلة في منطقة آسيا والمحيط الهادئ. وهو يعمل مع فريق تطوير البرمجيات وفريق المنتج لتطوير منتجات رائعة بناءً على عمليات تجريبية.
