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