Data-driven testing
ڈیٹا ڈرون ٹیسٹنگ (ڈی ڈی ٹی)، جسے ٹیبل ڈرون ٹیسٹنگ یا پیرامیٹرائزڈ ٹیسٹنگ بھی کہا جاتا ہے، ایک سافٹ ویئر ٹیسٹنگ کا طریقہ کار ہے جو کمپیوٹر سافٹ ویئر کی ٹیسٹنگ میں استعمال ہوتا ہے تاکہ حالات کی ٹیبل کا استعمال کرتے ہوئے کی جانے والی ٹیسٹنگ کو براہ راست ٹیسٹ ان پٹ اور قابل تصدیق آؤٹ پٹ کے طور پر بیان کیا جا سکے۔ آسان ترین شکل میں ٹیسٹر میز میں ایک قطار سے ان پٹ فراہم کرتا ہے اور اسی صف میں ہونے والی آؤٹ پٹ کی توقع کرتا ہے۔ ٹیبل میں عام طور پر ایسی اقدار ہوتی ہیں جو باؤنڈری یا پارٹیشن ان پٹ خالی جگہوں سے مطابقت رکھتی ہیں۔ کنٹرول کے طریقہ کار میں، ٹیسٹ کی ترتیب کو ڈیٹا بیس سے "ریڈ" کیا جاتا ہے۔ تعارف سافٹ ویئر یا پروگراموں کی جانچ میں، اس جانچ کو نافذ کرنے کے لیے کئی طریقے دستیاب ہیں۔ ان میں سے ہر ایک طریقہ ایک ساتھ موجود ہے کیونکہ وہ تخلیق کرنے اور اس کے بعد برقرار رکھنے کے لیے درکار کوششوں میں مختلف ہیں۔ ڈیٹا پر مبنی جانچ کا فائدہ ٹیبل میں اضافی ان پٹ شامل کرنے میں آسانی ہے جب نئی پارٹیشنز دریافت کی جاتی ہیں یا ٹیسٹ کے تحت پروڈکٹ یا سسٹم میں شامل کی جاتی ہیں۔ نیز، ڈیٹا پر مبنی جانچ کے عمل میں، ٹیسٹ کے ماحول کی ترتیبات اور کنٹرول ہارڈ کوڈڈ نہیں ہوتے ہیں۔ لاگت کا پہلو ڈی ڈی ٹی کو آٹومیشن کے لیے سستا لیکن دستی جانچ کے لیے مہنگا بناتا ہے۔ طریقہ کار کا جائزہ ڈیٹا پر مبنی جانچ ایک فریم ورک میں ان کے متعلقہ ڈیٹا سیٹوں کے ساتھ مل کر چلانے کے لیے ٹیسٹ اسکرپٹ کی تخلیق ہے۔ یہ فریم ورک دیکھ بھال کو کم کرنے اور ٹیسٹ کوریج کو بہتر بنانے کے لیے دوبارہ استعمال کے قابل ٹیسٹ منطق فراہم کرتا ہے۔ ان پٹ اور نتیجہ (ٹیسٹ کے معیار) ڈیٹا ویلیوز کو ایک یا زیادہ مرکزی ڈیٹا سورس یا ڈیٹا بیس میں محفوظ کیا جا سکتا ہے، اصل فارمیٹ، تنظیم اور ٹولز نفاذ کے لیے مخصوص ہو سکتے ہیں۔ ڈیٹا ان پٹ ویلیوز اور آؤٹ پٹ تصدیق ویلیوز دونوں کے لیے استعمال ہونے والے متغیرات پر مشتمل ہوتا ہے۔ جدید (پختہ) آٹومیشن ماحول میں ڈیٹا کو رننگ سسٹم سے مقصد سے بنائے گئے کسٹم ٹول یا سنیفر کا استعمال کرتے ہوئے حاصل کیا جا سکتا ہے، اس طرح ڈی ڈی ٹی فریم ورک ایک طاقتور خودکار رجعت ٹیسٹنگ ٹول تیار کرنے والے حاصل کردہ ڈیٹا کا پلے بیک انجام دیتا ہے۔ خودکار ٹیسٹ سوئٹ میں سسٹم کے جی یو آئی کے ذریعے صارف کے تعاملات ہوتے ہیں، جو دوبارہ قابل جانچ کے لیے ہوتے ہیں۔ ہر ٹیسٹ "پہلے" امیج ریفرنس ڈیٹا بیس کی ایک کاپی سے شروع ہوتا ہے۔ "صارف کے تعاملات" کو "نئے" جی یو آئی ورژن کے ذریعے دوبارہ چلایا جاتا ہے اور اس کا نتیجہ "پوسٹ ٹیسٹ" ڈیٹا بیس میں نکلتا ہے۔ حوالہ "پوسٹ ٹیسٹ" ڈیٹا بیس کا موازنہ ایک ٹول کا استعمال کرتے ہوئے "پوسٹ ٹیسٹ" ڈیٹا بیس سے کیا جاتا ہے۔ اختلافات ممکنہ رجعت کو ظاہر کرتے ہیں۔ پروگرام کے ذریعے نیویگیشن، ڈیٹا ذرائع کو پڑھنا، اور ٹیسٹ کی حیثیت اور معلومات کو لاگ ان کرنا سبھی ٹیسٹ اسکرپٹ میں کوڈ کیے جاتے ہیں۔ ڈیٹا سے چلنے والی کوئی بھی چیز جس میں تبدیلی کی صلاحیت ہو (جسے "تغیر پذیری" بھی کہا جاتا ہے، اور اس میں ماحول، اختتامی نکات، ٹیسٹ ڈیٹا، مقامات وغیرہ جیسے عناصر شامل ہیں) ٹیسٹ منطق (اسکرپٹ) سے الگ کیا جاتا ہے اور 'بیرونی اثاثہ' میں منتقل کیا جاتا ہے۔ یہ ایک ترتیب یا ٹیسٹ ڈیٹا سیٹ ہو سکتا ہے۔ اسکرپٹ میں انجام دی گئی منطق کا تعین ڈیٹا ویلیوز سے ہوتا ہے۔ مطلوبہ الفاظ پر مبنی جانچ اسی طرح کی ہوتی ہے سوائے اس کے کہ خود ٹیسٹ کیس کی منطق کو "ایکشن ورڈز" کے سیٹ کی شکل میں ڈیٹا ویلیوز کے طور پر انکوڈ کیا جاتا ہے، اور ٹیسٹ اسکرپٹ میں سرایت شدہ یا "ہارڈ کوڈڈ" نہیں ہوتا ہے۔ اسکرپٹ محض ڈیٹا سورس میں رکھے گئے ڈیٹا کے لیے ایک "ڈرائیور" (یا ڈیلیوری میکانزم) ہے۔ ڈیٹا پر مبنی جانچ کے لیے استعمال ہونے والے ڈیٹا بیس میں شامل ہو سکتے ہیں: ڈیٹا پول ڈی اے او آبجیکٹ اے ڈی او آبجیکٹ بھی دیکھیں کنٹرول ٹیبل کلیدی لفظ پر مبنی جانچ ٹیسٹ آٹومیشن فریم ورک ٹیسٹ پر مبنی ترقی میٹا ڈیٹا پر مبنی جانچ ماڈیولرٹی پر مبنی جانچ ماڈل پر مبنی جانچ حوالہ جات کارل ناگلے: ٹیسٹ آٹومیشن فریم ورک، سورس فورج پر سافٹ ویئر آٹومیشن فریم ورک سپورٹ، ڈیٹا پر مبنی جانچ نقطہ نظر سافٹ ویئر ٹیسٹنگ