Software Testing
✅ Software Testing-এর সংজ্ঞা (Definition in Bangla):
Software Testing হলো একটি প্রক্রিয়া যার মাধ্যমে আমরা যাচাই করি যে, কোনো সফটওয়্যার সঠিকভাবে কাজ করছে কিনা এবং সেটাতে কোনো ভুল (bug) বা ত্রুটি (error) আছে কিনা।
📘 সংক্ষিপ্ত সংজ্ঞা:
Software Testing হলো সফটওয়্যারের কার্যকারিতা, নির্ভরযোগ্যতা, পারফরম্যান্স এবং নিরাপত্তা যাচাই করার একটি প্রক্রিয়া।
🎯 Software Testing-এর উদ্দেশ্য:
ত্রুটি খোঁজা (bug detection)
-
নিশ্চিত হওয়া যে software ব্যবহারকারীর চাহিদা পূরণ করছে
-
নির্ভরযোগ্য এবং মানসম্পন্ন সফটওয়্যার সরবরাহ করা
🧪 দুই ধরনের Testing:
ধরণ | ব্যাখ্যা |
---|---|
✅ Manual Testing | মানুষ নিজে নিজে test case চালায় |
🤖 Automated Testing | tool/software দিয়ে অটোমেটেডভাবে পরীক্ষা করা হয় (যেমন: Selenium, JUnit) |
🧱 Software Testing Life Cycle (STLC) ধাপসমূহ:
-
Requirement Analysis
-
Test Planning
-
Test Case Development
-
Test Environment Setup
-
Test Execution
-
Test Closure
🔍 Software Testing Principles ব্যাখ্যা (বাংলায়)
1️⃣ Testing
সংজ্ঞা: The execution of a program to find its unexpected behavior
📌 বাংলায়:
সফটওয়্যারটি চালিয়ে দেখা — এতে কোনো অপ্রত্যাশিত আচরণ (unexpected behavior) আছে কি না, তা খুঁজে বের করা।
📘 উদাহরণ:
তুমি যদি একটি লজিন পেজে ভুল পাসওয়ার্ড দাও, এবং সেটি ভুলভাবে "লগিন সাকসেসফুল" দেখায় — তাহলে এটা একটা bug। এই ধরণের bug খুঁজতেই testing করা হয়।
2️⃣ Verification
সংজ্ঞা: The process of proving the program’s correctness
📌 বাংলায়:
সফটওয়্যারটি ঠিকভাবে বানানো হয়েছে কি না — তা যাচাই করার প্রক্রিয়া। এটা কোড চালানো ছাড়াও করা যায়।
📘 উদাহরণ:
ডিজাইন ডকুমেন্ট, requirement document, বা কোড রিভিউ দেখে যাচাই করা যায় — যা verification.
🔁 Verification মানে: "Are we building the product right?"
3️⃣ Validation
সংজ্ঞা: The process of finding errors by executing the program in a real environment
📌 বাংলায়:
সফটওয়্যারটি যখন বাস্তব পরিবেশে (real environment) চালানো হয়, তখন তাতে কোনো ভুল আছে কি না — তা খুঁজে বের করার প্রক্রিয়া।
📘 উদাহরণ:
একজন ব্যবহারকারী মোবাইল অ্যাপে কোনো ফিচার ঠিকভাবে কাজ করছে না বলল — তাহলে সেটা validation এর মাধ্যমে ধরা পড়েছে।
🔁 Validation মানে: "Are we building the right product?"
4️⃣ Debugging
সংজ্ঞা: Diagnosing the error and correct it
📌 বাংলায়:
যখন কোনো bug ধরা পড়ে, তখন সেই bug-টি খুঁজে বের করা, কারণ নির্ণয় করা এবং ঠিক করা — একে বলে Debugging।
📘 উদাহরণ:
কোনো error message আসছে — তুমি source code-এ গিয়ে দেখলে ভুলটা কোথায় হয়েছে, তারপর ঠিক করলে — এটাই debugging।
✅ সংক্ষেপে:
শব্দ | কাজ |
---|---|
Testing | ভুল বের করার জন্য সফটওয়্যার চালানো |
Verification | সফটওয়্যার ঠিকভাবে তৈরি হয়েছে কিনা তা যাচাই |
Validation | সফটওয়্যার চাহিদা অনুযায়ী কাজ করছে কিনা পরীক্ষা |
Debugging | ধরা পড়া ভুল ঠিক করা |