جانچ کا بنیادی مسئلہ

تعارف

گڈ آفٹرن، Khabrovsk کے رہائشیوں. ابھی میں ایک فنٹیک کمپنی کے لیے QA لیڈ اسامی کے لیے ایک ٹیسٹ ٹاسک حل کر رہا تھا۔ پہلا کام، ایک مکمل چیک لسٹ اور الیکٹرک کیتلی کی جانچ کے لیے ٹیسٹ کیسز کی مثالوں کے ساتھ ایک ٹیسٹ پلان بنانا، معمولی طور پر حل کیا جا سکتا ہے:

لیکن دوسرا حصہ ایک سوال کے طور پر نکلا: "کیا تمام ٹیسٹرز کے لیے کوئی مسئلہ مشترک ہے جو انہیں زیادہ مؤثر طریقے سے کام کرنے سے روکتا ہے؟"

سب سے پہلی چیز جو ذہن میں آئی وہ ان تمام کم و بیش قابل توجہ مسائل کی فہرست بنانا تھا جن کا مجھے جانچ کے دوران سامنا ہوا، چھوٹی چھوٹی چیزوں کو ختم کرنا اور باقی کا خلاصہ کرنا۔ لیکن میں نے جلدی سے سمجھ لیا کہ انڈکٹیو طریقہ ایک ایسے سوال کا جواب دے گا جو "سب" پر لاگو نہیں ہوتا ہے، بلکہ، بہترین طور پر، صرف ٹیسٹرز کی "اکثریت" پر لاگو ہوتا ہے۔ لہذا، میں نے دوسری طرف سے اس سے رجوع کرنے کا فیصلہ کیا، تخفیف کے ساتھ، اور ایسا ہی ہوا۔

تعریفیں

کسی نئے مسئلے کو حل کرتے وقت میں عام طور پر سب سے پہلا کام یہ کرتا ہوں کہ یہ سمجھنے کی کوشش کی جائے کہ یہ سب کیا ہے، اور ایسا کرنے کے لیے مجھے ان الفاظ کے معنی کو سمجھنے کی ضرورت ہے جو اسے پیش کرتے ہیں۔ سمجھنے کے لیے کلیدی الفاظ درج ذیل ہیں:

  • مسئلہ
  • ٹیسٹر
  • ٹیسٹر کام
  • ٹیسٹر کی کارکردگی

آئیے ویکیپیڈیا اور عام فہم کی طرف رجوع کریں:
مسئلہ (قدیم یونانی πρόβλημα) ایک وسیع معنوں میں - ایک پیچیدہ نظریاتی یا عملی مسئلہ جس کے لیے مطالعہ اور حل کی ضرورت ہے۔ سائنس میں - ایک متضاد صورتحال جو کسی بھی مظاہر، اشیاء، عمل کی وضاحت میں مخالف پوزیشن کی صورت میں ظاہر ہوتی ہے اور اسے حل کرنے کے لیے ایک مناسب نظریہ کی ضرورت ہوتی ہے؛ زندگی میں، مسئلہ ایک ایسی شکل میں تیار کیا جاتا ہے جو لوگوں کو سمجھ میں آتا ہے: "میں جانتا ہوں کہ میں کیا جانتا ہوں، میں نہیں جانتا کہ کیسے،" یعنی، یہ معلوم ہے کہ کیا حاصل کرنے کی ضرورت ہے، لیکن یہ معلوم نہیں ہے کہ اسے کیسے کرنا ہے . دیر سے آتا ہے۔ lat مسئلہ، یونانی سے۔ πρόβλημα "آگے پھینک دیا، سامنے رکھا"؛ προβάλλω سے "آگے پھینک دو، آپ کے سامنے رکھو؛ الزام"

یہ زیادہ معنی نہیں رکھتا، حقیقت میں، "مسئلہ" = "کوئی بھی چیز جس سے نمٹنے کی ضرورت ہے۔"
ٹیسٹر - ایک ماہر (ہم اقسام میں تقسیم نہیں کریں گے، کیونکہ ہم تمام ٹیسٹرز میں دلچسپی رکھتے ہیں) جو کسی جزو یا نظام کی جانچ میں حصہ لیتا ہے، جس کا نتیجہ یہ ہوتا ہے:
ٹیسٹر کا کام - جانچ سے متعلق سرگرمیوں کا ایک مجموعہ۔
کارکردگی (late. effectivus) - حاصل شدہ نتیجہ اور استعمال شدہ وسائل کے درمیان تعلق (ISO 9000: 2015).
نتیجہ - اعمال (نتیجہ) یا واقعات کی ایک سلسلہ (سلسلہ) کا نتیجہ، جس کا اظہار گتاتمک یا مقداری طور پر ہوتا ہے۔ ممکنہ نتائج میں فائدہ، نقصان، فائدہ، نقصان، قدر، اور فتح شامل ہیں۔
جیسا کہ "مسئلہ" کا مطلب بہت کم ہے: کوئی ایسی چیز جو کام کے نتیجے میں سامنے آئی ہو۔
وسائل - کسی شخص یا لوگوں کی کسی بھی سرگرمی کو انجام دینے کا مقداری طور پر قابل پیمائش امکان؛ ایسی شرائط جو مطلوبہ نتیجہ حاصل کرنے کے لیے کچھ تبدیلیوں کو استعمال کرنے کی اجازت دیتی ہیں۔ ٹیسٹر ایک شخص ہے، اور اہم وسائل کے نظریہ کے مطابق، ہر شخص چار اقتصادی اثاثوں کا مالک ہے:
نقد (آمدنی) ایک قابل تجدید وسیلہ ہے۔
توانائی (لائف فورس) ایک جزوی طور پر قابل تجدید وسیلہ ہے۔
وقت ایک مقررہ اور بنیادی طور پر ناقابل تجدید وسیلہ ہے۔
علم (معلومات) ایک قابل تجدید وسیلہ ہے، یہ انسانی سرمائے کا حصہ ہے جو بڑھ سکتا ہے اور تباہ ہو سکتا ہے۔ہے [1].

میں نوٹ کرنا چاہوں گا کہ ہمارے معاملے میں کارکردگی کی تعریف مکمل طور پر درست نہیں ہے، کیونکہ ہم جتنا زیادہ علم استعمال کریں گے، کارکردگی اتنی ہی کم ہوگی۔ لہذا، میں کارکردگی کی دوبارہ وضاحت کروں گا "حاصل شدہ نتائج اور خرچ کیے گئے وسائل کے درمیان تناسب۔" پھر سب کچھ درست ہے: کام کے دوران علم ضائع نہیں ہوتا، لیکن یہ ٹیسٹر کے صرف بنیادی طور پر ناقابل تجدید وسائل یعنی اس کے وقت کی لاگت کو کم کرتا ہے۔

حل

لہذا، ہم ٹیسٹرز کے عالمی مسائل تلاش کر رہے ہیں جو ان کے کام کی تاثیر کو متاثر کرتے ہیں۔
سب سے اہم وسیلہ جو ٹیسٹر کے کام پر خرچ ہوتا ہے وہ اس کا وقت ہوتا ہے (باقی کو کسی نہ کسی طرح کم کیا جا سکتا ہے) اور ہمارے لیے کارکردگی کے درست حساب کتاب کے بارے میں بات کرنے کے لیے، نتیجہ کو بھی وقت پر کم کرنا چاہیے۔ .
ایسا کرنے کے لیے، ایک ایسے نظام پر غور کریں جس کی عملداری کو ٹیسٹر اپنے کام کے ذریعے یقینی بناتا ہے۔ اس طرح کا نظام ایک پروجیکٹ ہے جس کی ٹیم میں ایک ٹیسٹر شامل ہے۔ پراجیکٹ لائف سائیکل کو تقریباً درج ذیل الگورتھم سے ظاہر کیا جا سکتا ہے:

  1. ضروریات کے ساتھ کام کرنا
  2. تکنیکی وضاحتیں کی تشکیل
  3. ترقی
  4. ٹیسٹنگ
  5. پیداوار میں ریلیز
  6. سپورٹ (آئٹم 1 پر جائیں)

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

اس سے کیسے نمٹا جائے؟

نتائج بہت واضح ہیں اور بہت سے لوگوں کی طرف سے طویل عرصے سے استعمال کیا جاتا ہے:

  1. ترقی اور جانچ تقریباً ایک ساتھ شروع اور ختم ہونی چاہیے (یہ عام طور پر محکمہ کے ذریعے کیا جاتا ہے۔ QA)۔ مثالی آپشن وہ ہوتا ہے جب تیار کی جانے والی تمام فعالیت کو پہلے سے ہی آٹوٹیسٹ کے ذریعے احاطہ کیا جاتا ہے جب تک کہ یہ تیار ہو، رجعت (اور اگر ممکن ہو تو، پری کمٹ) ٹیسٹنگ میں کسی قسم کا استعمال کرتے ہوئے CI.
  2. پروجیکٹ میں جتنی زیادہ خصوصیات ہوں گی (جتنا زیادہ پیچیدہ ہے)، اتنا ہی زیادہ وقت اس بات کی جانچ پڑتال میں صرف کرنا پڑے گا کہ نئی فعالیت پرانی کو توڑ نہ دے۔ اس لیے جتنا زیادہ پیچیدہ پروجیکٹ ہوگا، اتنا ہی زیادہ آٹومیشن کی ضرورت ہوگی۔ رجعت کی جانچ.
  3. ہر بار جب ہم پروڈکشن میں کوئی خرابی کھو دیتے ہیں اور صارف اسے ڈھونڈتا ہے، ہمیں پوائنٹ 1 سے شروع ہونے والے پروجیکٹ لائف سائیکل سے گزرتے ہوئے اضافی وقت گزارنا پڑتا ہے (ضروریات کے ساتھ کام کرنا، اس معاملے میں، صارفین)۔ چونکہ بگ غائب ہونے کی وجوہات عام طور پر نامعلوم ہیں، اس لیے ہمارے پاس صرف ایک اصلاحی راستہ رہ گیا ہے - صارفین کے ذریعے پائے جانے والے ہر مسئلے کو ریگریشن ٹیسٹنگ میں شامل کیا جانا چاہیے تاکہ یہ یقینی بنایا جا سکے کہ یہ دوبارہ ظاہر نہیں ہوگا۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں