سؤال

جئت عبر المطبوعة مقال بقلم برتراند ماير حيث يذكر أنه يمكن إنشاء الاختبارات من المواصفات.لا يقوم فريق التطوير الخاص بي بأي شيء من هذا القبيل، ولكن يبدو أنه أسلوب جيد يجب أخذه في الاعتبار.كيف يتم توليد الاختبارات من المواصفات؟كيف تصف نجاحك في اكتشاف أخطاء البرامج عبر هذه الطريقة؟

هل كانت مفيدة؟

المحلول

هناك كل أنواع الطرق للقيام بذلك، بدءًا من ما أعتبره "شكلًا فنيًا" (وليس بالضرورة فنًا جيدًا) وصولاً إلى الاختبارات المشتقة رياضيًا من المواصفات الرسمية.في نهاية اليوم، يحتاج فريق التطوير الخاص بك إلى اتخاذ قرار بشأن ما يمكنهم فعله بناءً على الجدول الزمني الذي يعملون به.ومع ذلك، فإن القدرة على اختبار البرامج وفقًا للمواصفات يعد أمرًا جيدًا.

يمكن لفريقك فقط قياس "عمق" اختباراتك، ومن المحتمل أن يعتمد ذلك على مدى جودة مواصفاتك.إذا قالوا شيئًا مثل، "تحتاج واجهة مستخدم تسجيل الدخول إلى توفير زر إلغاء وزر تسجيل دخول، ويجب أن يعملوا"، فستكون اختباراتك عامة جدًا.لكن ضع في اعتبارك أنه حتى الاختبارات العامة جدًا تعد أمرًا جيدًا.الاختبار هو شيء جيد.الكثير من المطورين لديهم موقف سيء عندما يتعلق الأمر بالاختبار، ولكن في نهاية المطاف، أنت تقوم بشحن البرامج التي يجب أن تعمل، وبالنسبة لي، هذا يعني الكثير.

ستعتمد فعالية اختباراتك في العثور على أخطاء البرنامج على التفاصيل التي تضعها فيها.الأمر الجميل بشكل خاص في كتابة إجراءات الاختبار وفقًا للمواصفات هو أنه يمكنك اختبار كل إصدار بنفس مستوى التفاصيل مثل الإصدار السابق (يشار إليه عادةً باختبار الانحدار).

نصائح أخرى

قد يكون هذا إشارة إلى آرسبيك, ، وهي طريقة ذكية حقًا لتطوير الاختبارات كسلسلة من المتطلبات.ما زلت معتادًا على ذلك، ولكنه كان مفيدًا جدًا في تحديد ما يجب أن أفعله ومن ثم التأكد من أنني أفعل ذلك.

@ تيم سوليفان من برتراند ماير لا يمكن أن يكون مرتبطًا إلا بإيفل :)

أعتقد أنه يتحدث عنه إسبيك.نظرًا لاسم RSpec من Ruby Folk، أعتقد أنه يمكننا منحهم لقب "الإلهام الشديد".

أود أن أقول أن ذلك يعتمد على المواصفات الخاصة بك.لم أعمل بعد في أي مكان كانت فيه المواصفات جيدة بما يكفي لإنشاء اختبارات وحدة كاملة من المواصفات - لم يكن مستوى التفاصيل موجودًا.أخبرنا مديري دائمًا أنه إذا حددنا هذا المستوى، فيمكنهم فقط شحن المواصفات إلى الهند والحصول على ترميزها بسعر رخيص؛)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top