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