یونٹ 2 / 11

ٹیسٹ کا منظر نامہ اور ٹیسٹ کیس جنریشن: ضرورت سے لے کر جامع کنٹرول تک

فائدہ:

  • ایک ضرورت اور قبولیت کے معیار کو مصنوعی ذہانت کی مدد سے مساوی کلاسز، باؤنڈری ویلیو تجزیہ اور فیصلے کی میز جیسی تکنیکوں کے ساتھ جامع ٹیسٹ کیسز میں تبدیل کرنے کی صلاحیت
  • مثبت، منفی اور ایج کیسز کو الگ الگ تیار کرنے کی صلاحیت اور پروڈکٹ کی معلومات کے ساتھ مصنوعی ذہانت سے چھوٹنے والے ایج کیسز کو مکمل کرنے کی صلاحیت
  • ٹیسٹ کیسز کو قبولیت کے معیار سے جوڑ کر ٹریس ایبلٹی قائم کرنے اور کوریج گیپس اور غیر ضروری بلوٹ کو ختم کرنے کی صلاحیت

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

اس یونٹ میں، آپ مرحلہ وار سیکھیں گے کہ کس طرح ایک ضرورت کو AI سپورٹ کے ساتھ ایک جامع لیکن بے ترتیبی سے پاک ٹیسٹ سویٹ میں تبدیل کرنا ہے۔

مرحلہ وار: ضرورت سے لے کر ٹیسٹ سیٹ تک

مرحلہ 1 - ضرورت کو واضح کریں۔ AI کو خام ضرورت دینے سے پہلے قبولیت کے معیارات (وہ شرائط جو کہ کسی کام کو "مکمل" سمجھا جانے کے لیے پورا کرنا ضروری ہے) جمع کریں۔ "پاس ورڈ کو دوبارہ ترتیب دینا ضروری ہے" کافی نہیں ہے۔ اصول جیسے "ری سیٹ لنک 30 منٹ کے لیے درست ہے"، "ایک ہی پاس ورڈ دوبارہ استعمال نہیں کیا جا سکتا" اصل ٹیسٹ کا ذریعہ ہیں۔

مرحلہ 2 - جانچ کی تکنیکوں کو نافذ کریں۔ AI کے بارے میں صرف "اسکرپٹ لکھیں" نہ کہیں۔ نام سے کلاسک ٹیسٹ ڈیزائن کی تکنیکوں کے لیے پوچھیں:

  • مساوات کی کلاسیں (مساوی تقسیم): ان پٹ کو ان گروپوں میں تقسیم کرنا جن سے ایک جیسا سلوک پیدا کرنے کی توقع کی جاتی ہے۔ مثال کے طور پر، عمر کے فیلڈ کے لیے، "درست حد"، "بہت چھوٹی"، اور "بہت بڑی" کلاسز ہیں۔ ہر کلاس سے ایک مثال کی جانچ کافی ہے۔
  • باؤنڈری ویلیو کا تجزیہ: حد کی قدروں کی جانچ اس حقیقت کی بنیاد پر کہ غلطیاں زیادہ تر حدود میں ہوتی ہیں۔ یہ 18 سال کی عمر کی حد کے لیے الگ الگ 17، 18، 19 کی جانچ کرنے کی طرح ہے۔
  • فیصلہ کی میز: متعدد شرائط کے مجموعے اور ہر ایک کے متوقع نتائج کو ٹیبل کرنا۔
  • ریاست کی منتقلی: ریاست سے ریاست میں نظام کی منتقلی کی جانچ کرنا (مثال کے طور پر، آرڈر: تخلیق کردہ → ادا کردہ → بھیج دیا گیا) اور غلط ٹرانزیشنز۔

مرحلہ 3 - مثبت، منفی اور کنارے کی حالتوں کو الگ کریں۔ ایک مثبت ٹیسٹ (درست ان پٹ کے ساتھ متوقع نتیجہ)، ایک منفی ٹیسٹ (غلط ان پٹ کے ساتھ مناسب غلطی)، اور ایک کنارے کیس — بارڈر لائن یا غیر معمولی معاملات کے لیے پوچھیں۔ AI عام طور پر مثبت پر زور دیتا ہے۔ منفی اور ایج کیسز نامکمل ہیں جب تک کہ آپ واضح طور پر ان کی درخواست نہ کریں۔

مرحلہ 4 - ترجیح دیں اور کٹائی کریں۔ AI 60 منظرنامے تیار کر سکتا ہے۔ وہ سب برابر قیمت کے نہیں ہیں۔ ان لوگوں کو ترجیح دیں جن کا خطرہ زیادہ ہے (پیسہ، سیکیورٹی، ڈیٹا کا نقصان) اور ان کو یکجا کریں جو ڈپلیکیٹ ہیں۔

اشارہ: AI کو ایک علیحدہ درخواست بھیجیں جس میں کہا گیا ہے کہ "اس ضرورت سے 5 ناقابل تصور ایج کیسز تیار کریں"۔ AI کی سب سے قیمتی شراکت یہ ہے کہ یہ اکثر آپ کو غیر معمولی حالات کی یاد دلاتا ہے جنہیں آپ نے نظر انداز کیا ہے۔

کمزور فوری / مضبوط اشارہ

کمزور: "پاس ورڈ دوبارہ ترتیب دینے کے لیے ٹیسٹ کیسز لکھیں۔"
مضبوط: درج ذیل قبولیت کے معیار کے ساتھ 'پاس ورڈ ری سیٹ' خصوصیت کے لیے ٹیسٹ کیسز بنائیں: لنک 30 منٹ کے لیے درست، واحد استعمال، آخری 3 پاس ورڈز دوبارہ استعمال نہیں کیے جا سکتے، 5 غلط کوششوں کے بعد اکاؤنٹ 15 منٹ کے لیے بند کر دیا گیا۔ مساوی کلاسز اور باؤنڈری ویلیو تجزیہ کا اطلاق کریں۔ ہر ایک مثبت، منفی اور ID کے لیے الگ الگ کیسز میں ID دیں۔ اقدامات، ٹیسٹ کا ڈیٹا، متوقع نتیجہ، متعلقہ قبولیت کے معیار کو نمایاں کریں

طاقتور فوری؛ یہ قواعد، تکنیک، آؤٹ پٹ فارمیٹ اور ترجیحی ترتیب دیتا ہے۔ اس طرح، AI قابل عمل اور ٹریس ایبل ٹیسٹ کیسز تیار کرتا ہے، آرائشی نہیں۔

ٹیسٹ کیس آؤٹ پٹ فارمیٹ

ایک منظم فارمیٹ کے لیے پوچھیں جسے براہ راست آپ کی ٹیم کے ٹیسٹ مینجمنٹ ٹول (جیسے TestRail, Zephyr, Xray) میں درآمد کیا جا سکے۔ درج ذیل جدول ایک اچھے ٹیسٹ کیس کے اجزاء کو دکھاتا ہے:

علاقہ

تفصیل

مثال

ID

منفرد ID

TC-PWD-014

عنوان

مختصر مقصد

میعاد ختم ہونے والے لنک کو مسترد کر دیا جائے گا۔

شرط

جانچ سے پہلے شرط ضروری ہے۔

ری سیٹ لنک 31 منٹ پہلے تیار کیا گیا تھا۔

قدم

ترتیب وار اعمال

1. لنک پر کلک کریں 2. نیا پاس ورڈ درج کریں۔

ٹیسٹ ڈیٹا

کنکریٹ اقدار کا استعمال کیا جاتا ہے

پرانا لنک، نیا پاس ورڈ "Abc!2345"

متوقع نتیجہ

رویے کی تصدیق کی جائے۔

"لنک کی میعاد ختم" غلطی، پاس ورڈ تبدیل نہیں ہوتا ہے۔

قبولیت کا معیار

ٹریس ایبلٹی لنک

AK-3: لنک 30 منٹ کے لیے درست ہے۔

ترجیح

خطرے کی سطح

اعلی

چار کاپی کرنے کے قابل ٹیمپلیٹس

1) تکنیکی بنیاد پر منظر نامے کی پیداوار:

آپ کا کردار: سینئر ٹیسٹ ڈیزائنر۔ خصوصیت کے لیے ٹیسٹ کیسز بنائیں: [فیچر اور قبولیت کا معیار]۔ لاگو کریں: مساوی کلاسز، بریک پوائنٹ تجزیہ، فیصلے کی میز۔ 3 گروپس میں آؤٹ پٹ فراہم کریں: مثبت/منفی/ایج کیس۔ ہر کیس: ID، پیشگی شرط، اقدامات، ٹیسٹ کے اعداد و شمار، متوقع نتیجہ، قبولیت کا معیار، متعلقہ معیار (L)۔

2) ایج کیس ہنٹر:

درج ذیل خصوصیت کے لیے 10 عام طور پر نظر انداز کیے جانے والے ایج کیسز کی فہرست بنائیں: [فیچر]۔ ایک جملے میں لکھیں کہ یہ ہر ایک کے لیے خطرناک کیوں ہے۔ خالی/نال، ان پٹ بہت لمبا، کنکرنسی، ٹائم آؤٹ، فارمیٹ کی غلطیاں، یونیکوڈ/ایموجی، منفی/صفر، نیٹ ورک کی بندش جیسے محوروں کے بارے میں سوچیں۔

3) فیصلے کی میز کی پیداوار:

درج ذیل کاروباری اصول کے لیے فیصلہ سازی کی میز بنائیں: [قواعد]۔ کالم: شرط کے امتزاج؛ قطاریں: ہر شرط اور متوقع کارروائی۔ ناقابل حصول یا متضاد امتزاج کو جھنڈا۔ پھر ہر امتزاج کے لیے ایک ٹیسٹ کیس تجویز کریں۔

4) ٹریس ایبلٹی کنٹرول:

قبولیت کے معیار کی درج ذیل فہرست اور درج ذیل ٹیسٹ کیسز کو دیکھتے ہوئے: [معیار] / [کیسز]۔ ٹیبلر شکل میں دکھائیں کہ قبولیت کے کون سے معیارات NO ٹیسٹ کیسز (کوریج گیپ) سے پورے ہوتے ہیں اور کون سے کیسز کسی بھی معیار (فالتو کیس) سے پورے نہیں ہوتے ہیں۔

تین چھوٹے مقدمات

کیس 1 — کنارے کی حالتوں کی قدر۔ فنٹیک ٹیم کے ایک ماہر نے رقم کی منتقلی کی خصوصیت کے لیے 18 اسکرپٹ لکھے تھے۔ اس نے AI پر "ایج کیس ہنٹر" ٹیمپلیٹ کا اطلاق کیا۔ AI نے "ایک ہی وقت میں دو آلات سے ایک ہی بیلنس کو منتقل کرنے" کی صورت حال کو یاد دلایا۔ جب اس منظر نامے کا تجربہ کیا گیا تو، دوہری اخراجات کا خطرہ پایا گیا اور لائیو جانے سے پہلے اسے بند کر دیا گیا۔ ایک واحد کنارے کی صورتحال نے ممکنہ چھ اعداد و شمار کے نقصان کو روک دیا۔

کیس 2 - بلج کو تراشنا۔ ایک ٹیم نے AI نے ممبر شپ فارم کے لیے اسکرپٹ تیار کیا اور 74 کیسز سامنے آئے۔ ٹریس ایبلٹی ٹیمپلیٹ کو چلانے سے پتہ چلا کہ 74 کیسز صرف 9 قبولیت کے معیار پر پورا اترتے ہیں، بہت سے ایک ہی مساوی کلاس کو دوبارہ جانچتے ہیں۔ سیٹ کو 74 سے کم کر کے 23 اہم کیسز کر دیا گیا تھا۔ رن ٹائم 68 فیصد کم ہوا، کوریج کم نہیں ہوئی۔

کیس 3 - غلط مفروضہ۔ اے آئی نے ڈیٹ فیلڈ کے لیے "31 فروری" جیسی غلط تاریخوں کی جانچ کرنے کا مشورہ دیا، لیکن یہ نہیں معلوم تھا کہ ٹیم جس کیلنڈر کا حصہ استعمال کر رہی تھی اس نے پہلے ہی اسے بلاک کر دیا ہے۔ ماہر نے AI کے تیار کردہ 6 تاریخ میں سے 4 منظرناموں کو مصنوعات کے تناظر میں غیر ضروری قرار دے کر ختم کر دیا۔ AI نے امکانات پیدا کیے؛ مصنوعات کی معلومات کا انتخاب کیا۔

عام غلطیاں

  • قبولیت کا معیار دیے بغیر اسکرپٹ کی درخواست کرنا۔ یہ جانے بغیر کہ کیا سچ ہے، AI سطحی منظرنامے تیار کرتا ہے جو اکثر حقیقی خطرہ سے محروم رہتے ہیں۔
  • بس مثبت ٹیسٹوں کے لیے طے ہو رہا ہے۔ واضح طور پر منفی اور ایج کیسز نہیں چاہتے۔ یہ وہ جگہ ہے جہاں اکثر غلطیاں ہوتی ہیں۔
  • جو کچھ پیدا ہوتا ہے اسے قبول کرنا۔ یہ بھول جانا کہ AI کو پروڈکٹ کا سیاق و سباق نہیں معلوم اور سیٹ پر غیر ضروری یا ناممکن منظرنامے چھوڑنا۔
  • ٹریس ایبلٹی کو نظرانداز کرنا۔ مقدمات کو قبولیت کے معیار سے منسلک نہ کرنا؛ نتیجے کے طور پر، یہ نہیں دیکھا جاتا ہے کہ کس کسوٹی کا تجربہ نہیں کیا گیا ہے (کوریج گیپ)۔
  • مقدار کی غلطی۔ خوش ہوں کیونکہ "60 سکرپٹ جاری ہو چکے ہیں"۔ قیمت تعداد میں نہیں ہے، لیکن اس دائرہ کار میں ہے جو خطرے کا احاطہ کرتی ہے۔

خلاصہ میں

ٹیسٹ ڈیزائن ایک جملے کی ضرورت کو ٹھوس، قابل عمل معاملات میں ترجمہ کرنے کے بارے میں ہے جو سافٹ ویئر کی درستگی کو ثابت کرتے ہیں۔ AI اس تبدیلی کو بہت تیز کرتا ہے: جب آپ اسے قبولیت کے معیار، کلاسیکی جانچ کی تکنیک (مساوات کی کلاسز، بریک پوائنٹ، فیصلہ کی میز، ریاست کی منتقلی) اور واضح آؤٹ پٹ فارمیٹ دیتے ہیں تو یہ جامع بلیو پرنٹ تیار کرتا ہے۔ لیکن AI مثبت کی طرف متعصب ہے، پروڈکٹ کے سیاق و سباق کو نہیں جانتا، اور غیر ضروری بلوٹ پیدا کر سکتا ہے۔ آپ کا کام واضح طور پر منفی اور ایج کیسز کی درخواست کرنا، ٹریس ایبلٹی قائم کرنا، خطرے کے لحاظ سے ترجیح دینا، اور کٹائی کرنا ہے۔

درخواست کا کام

اپنے پروجیکٹ سے ایک فیچر منتخب کریں اور قبولیت کے معیار کو لکھیں۔ AI کے پاس "ٹیکنیک پر مبنی منظر نامے کی نسل" ٹیمپلیٹ کے ساتھ ٹیسٹ کیسز تیار کریں۔ پھر "ایج کیس ہنٹر" اور "ٹریس ایبلٹی چیک" ٹیمپلیٹس کا اطلاق کریں۔ نتیجے کے طور پر: (1) کم از کم 3 ایج کیسز شامل کریں جو AI چھوڑ دیتے ہیں، (2) ایسے کیسز کاٹیں جو قبولیت کے کسی معیار سے متصل نہ ہوں، (3) نئے کیسز لکھیں اگر قبولیت کا کوئی معیار باقی رہ گیا ہو۔ آخری سیٹ کو اسپریڈ شیٹ میں ڈالیں۔

چیک لسٹ

  • اسکرپٹ کی درخواست کرنے سے پہلے، میں نے قبولیت کے معیار کو واضح کیا۔
  • میں نے YZ سے مساوات کی کلاسز اور نام کے لحاظ سے باؤنڈری ویلیو کے تجزیہ کے لیے پوچھا۔
  • میں نے الگ الگ مثبت، منفی اور کنارے کی حالتیں پیدا کیں۔
  • میں نے ہر ٹیسٹ کیس کو قبولیت کے معیار (ٹریس ایبلٹی) سے جوڑ دیا۔
  • [ ] میں نے میز کے ساتھ دائرہ کار کے فرق اور غیر ضروری کیسز کو چیک کیا۔
  • میں نے خطرے کے لحاظ سے ترجیح دی اور سوجن سیٹ کو کاٹ دیا۔