জেমিটার (JMeter) Assertions হল এমন একটি শক্তিশালী টুল যা সার্ভারের রেসপন্সের বৈধতা যাচাই করতে ব্যবহৃত হয়। Assertions ব্যবহার করে আপনি নিশ্চিত হতে পারেন যে সার্ভার বা অ্যাপ্লিকেশন নির্ধারিত প্যারামিটার অনুযায়ী সঠিকভাবে কাজ করছে। এটি আপনার টেস্টের মান যাচাই করতে সাহায্য করে, যেমন: রেসপন্স কোড, রেসপন্সের আকার, বা কোনো নির্দিষ্ট টেক্সটের উপস্থিতি।
জেমিটার-এ বেশ কয়েকটি ধরনের Assertion রয়েছে, যেমন: Response Assertion, Duration Assertion, Size Assertion, এবং XML Assertion। এই টুলগুলির মাধ্যমে আপনি সার্ভার রেসপন্সের বিভিন্ন দিক পরীক্ষা করতে পারেন।
এখানে আমরা Assertions এর ব্যবহার নিয়ে বিস্তারিত আলোচনা করব, উদাহরণসহ।
1. Response Assertion
Response Assertion ব্যবহার করে আপনি সার্ভারের রেসপন্সের মধ্যে নির্দিষ্ট টেক্সট বা প্যাটার্নের উপস্থিতি যাচাই করতে পারেন। এটি ব্যবহার করা হয় যখন আপনি সার্ভারের রেসপন্সে বিশেষ কোনো তথ্য চাচ্ছেন, যেমন—একটি নির্দিষ্ট শব্দ বা ফ্রেজ।
উদাহরণ:
ধরা যাক, আপনি একটি HTTP রিকোয়েস্ট পাঠাচ্ছেন এবং আপনি নিশ্চিত করতে চান যে সার্ভারের রেসপন্সে "Welcome" শব্দটি রয়েছে।
ধাপ ১: Response Assertion যোগ করা
- Thread Group এর মধ্যে HTTP Request যোগ করুন।
- HTTP Request এর অধীনে Add → Assertions → Response Assertion নির্বাচন করুন।
- Response Assertion প্যানেলে, "Contains" নির্বাচন করুন এবং সঠিক টেক্সট লিখুন, যেমন:
Welcome।
কোড উদাহরণ
ধরা যাক, আপনি একটি HTTP রিকোয়েস্ট পাঠাচ্ছেন এবং রেসপন্সে Welcome শব্দটি উপস্থিত থাকতে হবে:
Response Assertion:
Condition: Contains
Text: Welcome
এখন, যদি রেসপন্সে Welcome শব্দটি না থাকে, তাহলে Assertion ব্যর্থ হবে এবং টেস্ট রিপোর্টে ত্রুটি দেখাবে।
2. Duration Assertion
Duration Assertion ব্যবহার করে আপনি সার্ভারের প্রতিক্রিয়ার সময়সীমা পরীক্ষা করতে পারেন। এটি নিশ্চিত করে যে আপনার অ্যাপ্লিকেশনটি নির্দিষ্ট সময়ে প্রতিক্রিয়া দিচ্ছে কিনা। সাধারণত পারফরম্যান্স টেস্টিং-এর জন্য এটি ব্যবহৃত হয়।
উদাহরণ:
ধরা যাক, আপনি চান যে একটি HTTP রিকোয়েস্টের রেসপন্স টাইম ৫০০ মিলিসেকেন্ডের মধ্যে থাকতে হবে।
ধাপ ১: Duration Assertion যোগ করা
- Thread Group এর মধ্যে HTTP Request যোগ করুন।
- HTTP Request এর অধীনে Add → Assertions → Duration Assertion নির্বাচন করুন।
- Duration Assertion প্যানেলে, "Response time should be less than 500ms" এন্ডিট করুন।
কোড উদাহরণ
ধরা যাক, আপনি চান যে HTTP রিকোয়েস্টের রেসপন্স টাইম ৫০০ মিলিসেকেন্ডের মধ্যে থাকতে হবে:
Duration Assertion:
Condition: less than
Time: 500 ms
এখন, যদি রেসপন্স টাইম ৫০০ মিলিসেকেন্ডের বেশি হয়, তাহলে Assertion ব্যর্থ হবে এবং রিপোর্টে তা প্রদর্শিত হবে।
3. Size Assertion
Size Assertion ব্যবহার করে আপনি সার্ভারের রেসপন্সের সাইজ পরীক্ষা করতে পারেন। এটি একটি সুনির্দিষ্ট সাইজ (বা সীমা) রেসপন্সের জন্য ব্যবহৃত হয়।
উদাহরণ:
ধরা যাক, আপনি চান যে সার্ভারের রেসপন্স সাইজ ১০ কিলোবাইটের বেশি হওয়া উচিত না।
ধাপ ১: Size Assertion যোগ করা
- Thread Group এর মধ্যে HTTP Request যোগ করুন।
- HTTP Request এর অধীনে Add → Assertions → Size Assertion নির্বাচন করুন।
- Size Assertion প্যানেলে, Size in bytes ফিল্ডে
10000(১০ কিলোবাইট) ইনপুট করুন।
কোড উদাহরণ
ধরা যাক, আপনি চান যে রেসপন্সের সাইজ ১০০০০ বাইট (১০ কিলোবাইট) এর বেশি না হয়:
Size Assertion:
Condition: less than
Size in bytes: 10000
এখন, যদি রেসপন্স সাইজ ১০ কিলোবাইটের বেশি হয়, তাহলে Assertion ব্যর্থ হবে এবং তা রিপোর্টে প্রদর্শিত হবে।
4. XML Assertion
XML Assertion ব্যবহার করে আপনি সার্ভারের XML রেসপন্স পরীক্ষা করতে পারেন। এটি XML ফর্ম্যাটে সঠিক তথ্য বা নোডের উপস্থিতি যাচাই করার জন্য ব্যবহৃত হয়।
উদাহরণ:
ধরা যাক, আপনি চান যে XML রেসপন্সে <status>success</status> নোডটি উপস্থিত থাকতে হবে।
ধাপ ১: XML Assertion যোগ করা
- Thread Group এর মধ্যে HTTP Request যোগ করুন।
- HTTP Request এর অধীনে Add → Assertions → XML Assertion নির্বাচন করুন।
- XML Assertion প্যানেলে, XPath ফিল্ডে
//status[text()='success']লিখুন।
কোড উদাহরণ
XML Assertion:
XPath: //status[text()='success']
এখন, যদি XML রেসপন্সে <status>success</status> নোডটি না থাকে, তাহলে Assertion ব্যর্থ হবে এবং তা রিপোর্টে দেখানো হবে।
সারাংশ
জেমিটার (JMeter) এর Assertions ব্যবহার করে আপনি আপনার টেস্টের রেসপন্সের বৈধতা যাচাই করতে পারেন। বিভিন্ন ধরনের Assertions যেমন Response Assertion, Duration Assertion, Size Assertion, এবং XML Assertion বিভিন্ন দিক থেকে সার্ভারের রেসপন্স পরীক্ষা করতে সহায়তা করে। এগুলি ব্যবহার করে আপনি নিশ্চিত করতে পারেন যে আপনার অ্যাপ্লিকেশন বা সার্ভিস সঠিকভাবে কাজ করছে এবং নির্দিষ্ট সময় বা সাইজের মধ্যে রেসপন্স দিচ্ছে।
Assertions ব্যবহারের মাধ্যমে আপনি আপনার ওয়েব অ্যাপ্লিকেশনের সঠিকতা এবং কার্যকারিতা আরও ভালোভাবে নিশ্চিত করতে পারবেন।
Read more