logo

اختبار تغطية البيان

تعد تغطية البيان أحد اختبارات البرامج المستخدمة على نطاق واسع. يأتي تحت اختبار الصندوق الأبيض.

العاب imessage على الاندرويد

يتم استخدام تقنية تغطية البيان لتصميم حالات اختبار الصندوق الأبيض. تتضمن هذه التقنية تنفيذ جميع عبارات الكود المصدري مرة واحدة على الأقل. يتم استخدامه لحساب إجمالي عدد العبارات المنفذة في الكود المصدري من إجمالي العبارات الموجودة في الكود المصدري.

تستمد تغطية البيان سيناريو حالات الاختبار ضمن عملية اختبار المربع الأبيض والتي تعتمد على بنية الكود.

تغطية البيان

في اختبار الصندوق الأبيض، ينصب تركيز المُختبر على عمل كود المصدر الداخلي ومخطط التدفق أو الرسم البياني الانسيابي للكود.

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

دعونا نفهم عملية حساب تغطية البيان من خلال مثال:

نحن هنا نستخدم الكود المصدري لإنشاء سيناريوهين مختلفين وفقًا لقيم الإدخال للتحقق من النسبة المئوية لتغطية كشف الحساب لكل سيناريو.

jtextfield

هيكل كود المصدر:

  • خذ مدخلات لقيمتين مثل a=0 وb=1.
  • أوجد مجموع هاتين القيمتين.
  • إذا كان المجموع أكبر من 0، فاطبع 'هذه هي النتيجة الإيجابية'.
  • إذا كان المجموع أقل من 0، فاطبع 'هذه هي النتيجة السلبية'.
 input (int a, int b) { Function to print sum of these integer values (sum = a+b) If (sum>0) { Print (This is positive result) } else { Print (This is negative result) } } 

إذن، هذا هو الهيكل الأساسي للبرنامج، وهذه هي المهمة التي سيقوم بها.

الآن، دعونا نرى السيناريوهين المختلفين وحساب النسبة المئوية لتغطية البيان لكود المصدر المحدد.

السيناريو 1:
إذا كان أ = 5، ب = 4

 print (int a, int b) { int sum = a+b; if (sum>0) print ('This is a positive result') else print ('This is negative result') } 

في السيناريو 1، يمكننا أن نرى أن قيمة المجموع ستكون 9 أكبر من 0 ووفقًا للشرط ستكون النتيجة ' وهذه نتيجة إيجابية. 'العبارات المميزة باللون الأصفر هي عبارات منفذة لهذا السيناريو.

بورن قذيفة ثانية

لحساب تغطية كشف الحساب للسيناريو الأول، خذ إجمالي عدد الكشوف وهو 7 وعدد الكشوف المستخدمة وهو 5.

 Total number of statements = 7 Number of executed statements = 5 
رابط تغطية البيان
 Statement coverage = 5/7*100 = 500/7 = 71% 
رابط تغطية البيان

وبالمثل، في السيناريو 2،

السيناريو 2:
إذا كان أ = -2، ب = -7

 print (int a, int b) { int sum = a+b; if (sum>0) print ('This is a positive result') else print ('This is negative result') } 

في السيناريو 2، يمكننا أن نرى أن قيمة المجموع ستكون -9 وهي أقل من 0 ووفقًا للشرط، ستكون النتيجة ' وهذه نتيجة سلبية. 'العبارات المميزة باللون الأصفر هي عبارات منفذة لهذا السيناريو.

لحساب تغطية كشف الحساب للسيناريو الأول، خذ إجمالي عدد الكشوف وهو 7 وعدد الكشوف المستخدمة وهو 6.

وقالت مادهوري هيا

إجمالي عدد البيانات = 7
عدد العبارات المنفذة = 6

رابط تغطية البيان
 Statement coverage = 6/7*100 <br> = 600/7 = 85% 
رابط تغطية البيان

ولكن، يمكننا أن نرى أن جميع البيانات مغطاة في كلا السيناريوهين ويمكننا أن نعتبر أن التغطية الإجمالية للبيان هي 100٪.

رابط تغطية البيان

لذلك، فإن تقنية تغطية البيان تغطي الكود الميت، والكود غير المستخدم، والفروع.