کسی بھی سافٹ ویر پروجیکٹ کا بنیادی مقصد ایک اعلی معیار کی پیداوار حاصل کرنا ہوتا ہے جبکہ لاگت اور منصوبے کو مکمل کرنے کے لئے درکار وقت کو کم کرنا۔ اس کمپنی کو حاصل کرنے کے لئے سافٹ ویئر پروڈکٹ کو بنیادی طور پر چار درجوں کی جانچ کے تابع کرنا ہے۔ سافٹ ویئر ٹیسٹنگ میں یونٹ ٹیسٹنگ جانچ کا پہلا درجہ ہے۔ اس مضمون کے دوران ، ہم دریافت کریں گے کہ یونٹ ٹیسٹ کس تفصیل سے ہے۔ اگر آپ سافٹ ویئر ٹیسٹنگ میں نئے ہیں تو ، اس بات کو بھی یقینی بنائیں .
آئیے اس مضمون میں شامل عنوانات پر ایک نظر ڈالیں:
- سافٹ ویئر ٹیسٹنگ کی سطحیں
- یونٹ ٹیسٹنگ کیا ہے؟
- آپ یونٹ ٹیسٹنگ کس طرح انجام دیتے ہیں؟
- یونٹ ٹیسٹنگ کے فوائد کیا ہیں؟
- ڈیمو: نمونہ یونٹ ٹیسٹ لکھنا
- بہترین یونٹ ٹیسٹنگ فریم ورک
سافٹ ویئر ٹیسٹنگ کی سطحیں
سافٹ ویئر ڈویلپمنٹ سائیکل کے اندر ایک ایسا مرحلہ ہے جس میں کاروباری اہم سافٹ وئیر کی درستگی ، معیار اور کارکردگی کیلئے تصدیق کی جاتی ہے۔
سافٹ ویئر ٹیسٹنگ کے اندر چار بنیادی سطحیں ہیں ، ہر ایک ترقیاتی عمل کے اندر ایک منفرد مقام نقطہ سے سافٹ ویئر کی فعالیت کی جانچ پڑتال کرتا ہے۔ سافٹ ویئر ٹیسٹنگ کی چار سطحیں جیسا کہ نیچے کی شبیہہ میں دکھایا گیا ہے۔
دو تار کا موازنہ کرنے کا طریقہ
یہ مضمون یونٹ ٹیسٹنگ ، سافٹ ویئر ٹیسٹنگ کے پہلے درجے کی تفصیل کے ساتھ وضاحت کرتا ہے۔
یونٹ ٹیسٹنگ کیا ہے؟
یونٹ ٹیسٹنگ ایک کوڈ کے سب سے چھوٹے ٹکڑے کو جانچنے کا ایک طریقہ ہے یونٹ جو کسی بھی نظام میں منطقی طور پر الگ تھلگ ہوسکتی ہے۔ یہ بنیادی طور پر اسٹینڈ ماڈیولز کی عملی درستگی پر مرکوز ہے۔
ایک یونٹ تقریبا ہر وہ چیز ہوسکتی ہے جسے آپ چاہتے ہیں۔ فعالیت کا ایک خاص ٹکڑا ، ایک پروگرام ، یا درخواست کے اندر ایک خاص طریقہ۔ چھوٹا یونٹ ، بہتر ہے۔ چھوٹے ٹیسٹ عام طور پر آپ کو اپنی پیداوار کے بارے میں بہت زیادہ دانے دار نظارہ دیتے ہیں ، کوڈ کارکردگی کا مظاہرہ کر رہا ہے۔ نیز ، اگر آپ کے ٹیسٹ چھوٹے ہیں تو تیزی سے چل سکتے ہیں۔ تو ، یہ سافٹ ویئر ٹیسٹنگ کا مائیکرو لیول بھی ہے۔
آپ یونٹ ٹیسٹنگ کس طرح انجام دیتے ہیں؟
پروگرام کے ہر حصے کو الگ کرنے اور جانچ کرنے کے لئے یونٹ ٹیسٹنگ کا ہدف یہ ہے کہ انفرادی حصے صحیح اور ارادہ کے مطابق کام کررہے ہیں۔ یونٹ ٹیسٹ کرتے وقت ، درخواست کوڈ کے افعال کو نمونہ ان پٹ کے ساتھ ٹیسٹ کے ماحول میں پھانسی دی جاتی ہے۔ پھر حاصل کردہ آؤٹ پٹ کا موازنہ اس ان پٹ کے متوقع پیداوار کے ساتھ کیا جاتا ہے۔ اگر وہ ٹیسٹ پاس سے میل کھاتے ہیں۔ اگر نہیں تو یہ ناکامی ہے۔ کوڈ کی درستگی کی تصدیق کے لئے یونٹ ٹیسٹ بہت اچھے ہیں۔ آئیے ایک نمونہ الگورتھم پر ایک نظر ڈالتے ہیں جو تصور کو واضح کرتا ہے۔
جیسا کہ آپ دیکھ سکتے ہیں ، یونٹ ٹیسٹ انجام دینا بالکل آسان ہے۔ آپ کوڈ کا کچھ حصہ لکھتے ہیں اور اسے جانچنے کے لئے مشروط کرتے ہیں۔ اگر ٹیسٹ پاس ہوجاتا ہے تو آپ اسے اپنے ٹیسٹ سویٹ میں شامل کریں اور کوڈ کے اگلے حصے کی جانچ کریں۔ ورنہ ، آپ ضروری تبدیلیاں کرتے ہیں اور اسے دوبارہ آزماتے ہیں۔ اس عمل کو دہرائیں جب تک کہ سافٹ ویئر کی تمام اکائیوں کی جانچ نہ ہو۔اس طرح کی بنیادی جانچ بہت سارے فوائد کی پیش کش کرتی ہےسافٹ ویئر کیڑے جلد تلاش کرنا ، انضمام کو آسان بنانا ، جس کا ایک ذریعہ فراہم کرتا ہے ، اور کئی دوسرے.
یونٹ ٹیسٹنگ کے فوائد کیا ہیں؟
رجعت کے ٹیسٹ کروانے سے ، کمپنیوں کو متعدد طریقوں سے فائدہ ہوتا ہے جیسے:
کوڈنگ فرتیلی بناتا ہے
یونٹ ٹیسٹنگ کوڈنگ کے عمل کو تیز کرتی ہے۔ جب آپ اپنی درخواست میں نئی خصوصیات شامل کرتے ہیں تو ، کبھی کبھی آپ کو اپنے سافٹ ویئر پروڈکٹ کے ڈیزائن اور کوڈ میں ترمیم کرنا پڑسکتی ہے۔ تاہم ، پہلے سے آزمودہ کوڈ کو تبدیل کرنے میں بہت زیادہ پیسہ اور محنت خرچ آتی ہے۔ لیکن یونٹ ٹیسٹ کے ساتھ ، آپ پورے پروگرام کو جانچنے کے بجائے کوڈ کے نئے شامل کردہ ٹکڑے کی جانچ کرسکتے ہیں۔ نیز ، یونٹ ٹیسٹ آپ کے کوڈ کے معیار کو بہتر بناتے ہیں۔
سافٹ ویئر کیڑے جلد تلاش کرنے میں مدد کرتا ہے
چونکہ انضمام سے قبل انفرادی کوڈ کی جانچ کرنے والے ڈویلپرز کے ذریعہ یونٹ ٹیسٹ کروائے جاتے ہیں ، سوفٹ ویئر کی جانچ کے عمل میں معاملات بہت جلد مل سکتے ہیں۔ کوڈ کے دوسرے ٹکڑوں پر اثر ڈالے بغیر ان کا حل اسی وقت اور وہاں موجود ہے۔ جلد غلطیوں کا پتہ لگانے کا فائدہ یہ ہے کہ آپ ترقی کے خطرات کو کم سے کم کرسکتے ہیں ، اور بہت زیادہ رقم اور وقت خرچ کرنے سے بچ سکتے ہیں۔
دستاویزات فراہم کرتا ہے
جانچ میں ، کوڈ دستاویزات کو اکثر نظرانداز کیا جاتا ہے کیونکہ اس میں بہت زیادہ وقت درکار ہوتا ہے۔ لیکن یونٹ ٹیسٹنگ بہتر کوڈنگ کے بہتر طریقوں کی حوصلہ افزائی کرکے اور کوڈ کے ٹکڑوں کو پیچھے چھوڑ کر دستاویزات کو قدرے آسان بنادیتی ہے جو بیان کرتی ہے کہ آپ کی مصنوعات کیا کررہی ہے۔
ٹھیک کرنا آسان بنا دیا گیا ہے
یونٹ ٹیسٹنگ ڈیبگنگ کے عمل کو آسان بناتا ہے۔ جب کوئی ٹیسٹ ناکام ہوجاتا ہے تو ، کوڈ میں صرف تازہ ترین تبدیلیوں کو ڈیبگ کرنے کی ضرورت ہے۔ کئی دن یا ہفتوں یا مہینوں کے عرصہ میں کی جانے والی جانچ کی اعلی سطح پر اسکین کرنے کی ضرورت ہے۔
جانچ کے اخراجات کو کم کرتا ہے
چونکہ کیڑے جلد ہی پائے جاتے ہیں ، اس لئے بگ فکس کی لاگت آتی ہےکسی حد تک کم ترقی کے آخری مراحل کے دوران اگر کوئی بگ پایا گیا تو اس میں بہت زیادہ لاگت آئے گی۔ آپ کو اپنے پروجیکٹ کے پورے کوڈ میں ترمیم کرنا ہوگی۔ یہ واقعی تھکاوٹ اور رقم کا ضیاع لگتا ہے۔ لہذا یونٹ کی جانچ کرنے سے قیمتی وقت اور رقم کی بھی بچت ہوتی ہے۔
تم وہاں جاؤ! مجھے امید ہے کہ آپ کو اس بات کا یقین ہو جائے گا کہ یونٹ ٹیسٹنگ کیوں ضروری ہے۔ مزید آگے بڑھتے ہوئے ، آئیے یونٹ ٹیسٹ لکھنے کے طریقہ پر ایک آسان ڈیمو چیک کریں۔
ڈیمو: نمونہ یونٹ ٹیسٹ لکھنا
یونٹ ٹیسٹنگ کا مطالبہ ہے کہ ایک اچھا امتحان ہونا چاہئے:
- لکھنا آسان ہے
- پڑھنے کے قابل
- قابل اعتماد
- تیز اور موثر
ڈیمو کے لئے تقاضے:
- جاوا ڈویلپمنٹ کٹ (جے ڈی کے)
- ایک IDE (اس ڈیمو میں چاند گرہن استعمال ہوتا ہے)
- یونٹ ٹیسٹنگ فریم ورک (اس ڈیمو میں TestNG استعمال کیا جاتا ہے)
آئیے ڈیمو کے ساتھ شروعات کریں۔ تو ، اس ڈیمو میں ، میرے پاس دو فائلیں ہیں:
- ایک ریاضی کی کلاس جس کی جانچ کیلئے ایک فنکشن ہے
- ٹیسٹ کرنے کے طریقوں کے ساتھ ایک ٹیسٹ کلاس
جانچ کے معاملے کو سمجھنے کے لئے نیچے دیئے گئے کوڈ پر ایک نظر ڈالیں۔ یہ ایک ریاضی کی کلاس ہے جس میں دو طریقے ہیں: شامل کریں ، ضرب دیں۔
پبلک فائنل کلاس ریاضی ic عوامی جامد انٹ ایڈیٹ (پہلے فرسٹ ، انٹ سیکنڈ) {ریٹرن فرسٹ + سیکنڈ} پبلک جامد انٹی ملٹیپلیٹ (انٹلیٹیٹیشنل ، انٹلیٹیپلٹر) {ریٹرن ضرب المثل * ملٹی پلر}
اگلا ، ہمارے پاس ٹیسٹ کی کلاس ہے جس کے طریق کار کے ساتھ اس کی فعالیت کو جانچنا ہے شامل کریں () تقریب اور ضرب() تقریب
درآمد کریں org.testng.annotations.Test امپورٹ جامد org.testng.Assert.assertEquals عوامی طبقے کے ریاضی کی جانچ پڑتال {@ ٹسٹ پبلک باطل add_TwoPlusTwo_ReturnsFour () {حتمی INT متوقع = -4 آخری INT اصل = ریاضی.اے ڈی (-2 ، -3) assertEquals (اصل ، متوقع)}ٹیسٹ پبلک باطل ایک سے زیادہ_نوازوں_تریزوال () {حتمی INT متوقع = -4 حتمی INT = اصل. ریاضی.متعدد (2،2) assertEquals (اصل ، متوقع)}}
یونٹ ٹیسٹ: شامل کرنے کی تقریب کی فعالیت کو جانچنا
تبصرہ ضرب() ریاضی کلاس میں تقریب اور متعدد_ٹون نمبر_ریٹراسالیو () ٹیسٹ کلاس میں تقریب. پھر کے لئے قیمت تفویض متوقع متغیر اور کال کریں ضرب() نمونہ ان پٹ کے ساتھ کام کریں (مثبت اور منفی دونوں صورتوں پر غور کریں)۔ جب آپ ٹیسٹ چلاتے ہیں تو ، متوقع قدر کے ساتھ موازنہ کیا جاتا ہے موجودہ قدر. اگر ٹیسٹ مطلوبہ نتائج لوٹ رہا ہے تو ، اس کا مطلب ہے شامل کریں () تقریب بالکل کام کر رہی ہے۔ جب میں نے ٹیسٹ کے نتائج کا اسکرین شاٹ منسلک کیا ہے متوقع قیمت -5 ہے اور پیرامیٹرز کو منتقل کیا گیا شامل کریں () تقریب -2 اور -3 ہیں۔
آسان ہے نا؟ ہم نے پورے پروگرام کے کسی یونٹ یا حصے کا تجربہ کیا ہے۔ آپ بھی ایسا ہی کرسکتے ہیں ضرب() تقریب اس ڈیمو کا مقصد آپ کو یہ سمجھانا تھا کہ یونٹ ٹیسٹنگ میں یونٹ کا کیا مطلب ہے۔ لہذا ، یہاں کا بنیادی مقصد چھوٹے حصوں میں سوفٹویئر منصوبے کے داخلی ڈیزائن اور داخلی منطق ، داخلی راستوں کی تصدیق کرنا ہے۔ یونٹ ٹیسٹنگ فریم ورک جو میں نے اس ڈیمو میں استعمال کیا ہے وہ ٹیسٹ این جی ہے۔ مختلف پروگرامنگ زبانوں کے ل unit یونٹ کے مختلف ٹیسٹنگ فریم ورک ہیں۔
بہترین یونٹ ٹیسٹنگ فریم ورک
مشہور یونٹ ٹیسٹنگ فریم ورک میں سے کچھ یہ ہیں:
- جونیٹ: یہ ایک آزمائشی کارفرما ترقیاتی ماحول کے لئے ایک اوپن سورس فریم ورک ہے ، خاص طور پر اس کے لئے ڈیزائن کیا گیا .
- یونٹ: یہ C # کے لئے سب سے مشہور یونٹ ٹیسٹنگ فریم ورک میں سے ایک ہے۔
- ٹیسٹ این جی: کے لئے ڈیزائن کیا گیا پروگرامنگ لینگویج ، یہ یونیت اور یونیت سے مشابہت رکھتا ہے لیکن کچھ نئی افعال پیش کرتا ہے جس کی وجہ سے اسے زیادہ طاقتور اور استعمال میں آسان ہوجاتا ہے۔
- ایچ ٹی ایم ایل یونٹ: یہ سب سے زیادہ مشہور فریم ورک میں سے ایک ہے . اس کا استعمال ویب ایپلی کیشنز کی جانچ کے لئے کیا جاتا ہے جو JUnit اور TestNG جیسے فریم ورک کے اندر استعمال ہوتے ہیں۔
- یونٹسٹ: JUnit فریم ورک سے متاثر ہوکر ، یہ فریم ورک ٹیسٹ آٹومیشن کی حمایت کرتا ہے اور رپورٹنگ کے ماحول سے ٹیسٹوں سے آزادانہ طور پر کام کرتا ہے۔ اس کے لئے یہ سب سے مشہور یونٹ ٹیسٹنگ فریم ورک میں سے ایک ہے .
ان کے علاوہ ، بہت سارے دوسرے فریم ورکز موجود ہیں۔ اس کے ساتھ ، ہم بلاگ کے اختتام تک پہنچ گئے ہیں۔ امید ہے کہ جو چیزیں آپ نے آج یہاں سیکھی ہیں وہ آپ کے سافٹ ویئر کی جانچ کے سفر میں آگے بڑھتے ہی آپ کی مدد کریں گی۔
اگر آپ کو یہ مل گیا متعلقہ مضمون ، چیک کریں براہ راست آن لائن ایڈوریکا کے ذریعہ ، ایک قابل اعتماد آن لائن سیکھنے والی کمپنی جس کی دنیا بھر میں 250،000 سے زیادہ مطمئن سیکھنے والوں کا نیٹ ورک موجود ہے۔
ہمارے لئے ایک سوال ہے؟ برائےکرم اس مضمون کے تبصرے والے حصے میں اس کا ذکر کریں اور ہم آپ کو واپس ملیں گے۔