এই উত্তরটি লেখার সময়, আমি বুঝতে পেরেছি এটি পরীক্ষার বিষয়ে নয়, এটি নথিপত্র সম্পর্কে। আপনার প্রথমে চতুর ইশতেহারটি পড়া উচিত :
[আমরা মূল্যবান] বিস্তৃত ডকুমেন্টেশনের মাধ্যমে কাজের সফ্টওয়্যার
সুতরাং, আপনার আপনার স্পেসিফিকেশনগুলি সম্পাদনযোগ্য করা উচিত, অর্থাত্ পরীক্ষার সম্পূর্ণ স্বয়ংক্রিয় সেট হিসাবে সেগুলি লিখুন।
গল্পের উপর ভিত্তি করে চশমা লেখা কি একটি ভাল ধারণা?
হ্যাঁ, ইমো এটিকে "আচরণ দ্বারা চালিত বিকাশ" বা "উদাহরণ দ্বারা নির্দিষ্টকরণ" বলা হয়। রুবিতে একটি দুর্দান্ত সরঞ্জাম শসা রয়েছে যা অনেকটা সহায়তা করে।
এখন সমস্যাটি হ'ল কারণ এখানে প্রচুর গল্প রয়েছে, এটি তাত্ক্ষণিকভাবে স্পষ্ট নয়, গল্পের সাথে সম্পর্কিত সিস্টেমের কোনও অংশেই।
আপনি কেন এটি পরিষ্কার হতে চান? মানে, আপনার কি সত্যিই একটি "পরীক্ষা / কোড" ট্রেসেবিলিটি ম্যাট্রিক্সের দরকার? একটি স্পেসিফিকেশন হিসাবে পরীক্ষা লেখার সুবিধা হ'ল আপনার আলাদা "প্রয়োজনীয়তা / পরীক্ষা" ট্রেসেবিলিটি দরকার নেই, কারণ পরীক্ষাগুলি প্রয়োজনীয়তা হয়ে ওঠে। সংহতকরণ পরীক্ষার উদ্দেশ্যে আপনার পৃথক অংশ হিসাবে নয় বরং আপনার সফ্টওয়্যারটিকে পুরো হিসাবে বিবেচনা করা উচিত।
"মৃত" মডিউল আছে কিনা তা দেখতে আপনার কভারেজ সরঞ্জামের প্রয়োজন হতে পারে, আপনার সিস্টেমের অংশগুলি আপনার স্পেসিফিকেশন পরীক্ষার দ্বারা আবৃত নয়। তবে এই বিশেষ কোডটি কী কী স্পেসিফিকেশনের সাথে মিলছে তা আপনার সত্যিই যত্ন নেওয়া উচিত নয়। এটি তদ্বিপরীত হওয়া উচিত: একটি নির্দিষ্ট স্পেসিফিকেশন থেকে আপনার জানা উচিত সিস্টেমের কোন অংশটি এর সাথে মিলে যায়। আপনার নির্দিষ্টকরণে কিছু সদৃশ সম্পর্কে আপনার চিন্তা করা উচিত নয়। এবং আপনি যদি নিজের কোডটিতে একটি DRY নীতি প্রয়োগ করেন তবে একই কোডটি সম্পাদনকারী কয়েক ডজন স্পেক থাকবে।
এটি বিকাশকারীদের সময়ে কাজ করে, প্রতিটি স্প্রিন্ট ডিভগুলি কেবল তাদের কী করা উচিত এবং কী পরিবর্তন করতে হবে সেগুলির একটি রূপরেখা নির্দিষ্ট করে। তবে এই গল্পের তালিকাটি বজায় রাখার ক্ষেত্রে এবং পরীক্ষার জন্য, এটির পক্ষে সত্যই হার্ড ট্র্যাকিং বাগ পাওয়া শুরু এবং সাধারণভাবে কেবল চশমা বজায় রাখা, কারণ স্ক্রিনের কার্যকারিতার এক টুকরো বিভিন্ন কারণে বিভিন্ন জায়গায় নথিভুক্ত থাকতে পারে to গল্প দ্বারা বিভক্ত।
এটি এতটা সাধারণ বিষয় নয় যে কয়েকশ সংখ্যক ইন্টিগ্রেশন টেস্ট একটি জটিল মডিউলে সামান্য পরিবর্তন দ্বারা ভেঙে যায়। ইউনিট টেস্টিং পদক্ষেপ যেখানে।
আপনার পরীক্ষাগুলি যেমন আপনার কাঠামো গঠন করা উচিত যাতে আপনি বলতে পারেন যে কোনও নির্দিষ্ট পরীক্ষার একটি উচ্চ স্তরের প্রয়োজনীয়তা, বা এটির একটি সূক্ষ্ম বিবরণ আবরণ রয়েছে কিনা। যদি দ্বিতীয়টি হয় তবে আপনার এই পরীক্ষাটি আপনার ইন্টিগ্রেশন টেস্ট স্যুট থেকে আলাদা করা উচিত। ইউনিট পরীক্ষার উদ্দেশ্য বাগগুলি স্থানীয়করণ। যাতে আপনি যদি একটি বাগ প্রবর্তন করেন তবে একটি এবং কেবলমাত্র একটি পরীক্ষায় ব্যর্থতা থাকবে।
আমরা কি গল্পগুলি ভুল উপায়ে লিখেছি?
আমি মনে করি, আপনাকে কেবল গল্পগুলি ব্যবহারকারীর দ্বারা, যেমন "গ্রাহক", "সহায়ক", বা বৈশিষ্ট্য / পর্দা / ওয়ার্কফ্লোস ("ক্রয়", "ফেরত") দ্বারা মহাকাব্যগুলিতে সংগঠিত করতে হবে।
এবং আবারও, স্পেসিফিকেশন পরীক্ষাগুলি ইউনিট পরীক্ষার প্রতিস্থাপন নয়। আরও পড়ুন