BeanShell Sampler এবং Pre-Processor এর ব্যবহার

JMeter Scripting এবং BeanShell - জেমিটার (jmeter) - Java Technologies

323

জেমিটার (JMeter) একটি শক্তিশালী টুল যা পারফরম্যান্স, লোড, এবং স্ট্রেস টেস্টিংয়ের জন্য ব্যবহৃত হয়। BeanShell Sampler এবং Pre-Processor হল দুটি গুরুত্বপূর্ণ ফিচার যা জেমিটার টেস্ট কেস কনফিগারেশন এবং স্ক্রিপ্টিংকে আরও ফ্লেক্সিবল ও কার্যকরী করে তোলে। এই ফিচারগুলো আপনাকে আরও ডাইনামিক এবং কাস্টমাইজড টেস্ট কেস তৈরি করতে সাহায্য করে।

এই গাইডে আমরা BeanShell Sampler এবং Pre-Processor এর ব্যবহার সম্পর্কে বিস্তারিত আলোচনা করব।


BeanShell Sampler

BeanShell Sampler হল জেমিটার একটি স্ক্রিপ্টিং উপাদান যা Java বা BeanShell স্ক্রিপ্টিং ভাষা ব্যবহার করে কাস্টম কোড বা স্ক্রিপ্ট রান করতে সাহায্য করে। এটি আপনাকে HTTP রিকোয়েস্ট বা অন্য কোন স্যাম্পলারের আগে বা পরে বিশেষ কোনো কাজ করার সুযোগ দেয়।

BeanShell Sampler এর প্রয়োজনীয়তা

  1. কাস্টম স্ক্রিপ্টিং: BeanShell Sampler ব্যবহার করে আপনি আপনার নিজস্ব স্ক্রিপ্ট বা কোড রান করতে পারেন যা আপনার টেস্ট কেসের জন্য বিশেষভাবে তৈরি করা হয়েছে।
  2. ডাইনামিক ডেটা তৈরি: আপনি যদি ডাইনামিক ডেটা তৈরি করতে চান, যেমন একটি টোকেন বা সেশন আইডি যা একাধিক রিকোয়েস্টে ব্যবহৃত হবে, তবে BeanShell Sampler ব্যবহার করে সহজেই এটি করা সম্ভব।
  3. জটিল লজিক প্রয়োগ: জেমিটার টেস্ট কেসে আপনি যদি কোনো বিশেষ ক্যালকুলেশন বা লজিক প্রয়োগ করতে চান, যেমন গণনা, শর্তপূরণ ইত্যাদি, তবে BeanShell Sampler এর মাধ্যমে এটি করতে পারবেন।

BeanShell Sampler কনফিগারেশন

  1. Thread Group বা যেকোনো স্যাম্পলার-এ রাইট ক্লিক করুন।
  2. "Add" -> "Sampler" -> "BeanShell Sampler" সিলেক্ট করুন।
  3. BeanShell Sampler এর মধ্যে স্ক্রিপ্ট লিখুন।

উদাহরণ:

আপনি যদি কোনো র্যান্ডম নাম জেনারেট করতে চান, তাহলে BeanShell Sampler-এ নিচের কোডটি ব্যবহার করতে পারেন:

import java.util.Random;
String[] names = {"John", "Jane", "Mike", "Alice", "Bob"};
Random rand = new Random();
String randomName = names[rand.nextInt(names.length)];
vars.put("RandomName", randomName);

এখানে, এই স্ক্রিপ্টটি একটি র্যান্ডম নাম নির্বাচন করবে এবং সেটিকে RandomName ভ্যারিয়েবলে সংরক্ষণ করবে, যা পরবর্তী রিকোয়েস্টে ব্যবহার করা যেতে পারে।


Pre-Processor

Pre-Processor হল জেমিটার উপাদান যা রিকোয়েস্ট পাঠানোর আগে কিছু কোড বা স্ক্রিপ্ট রান করার জন্য ব্যবহৃত হয়। এটি সাধারণত রিকোয়েস্টের জন্য ডেটা প্রস্তুত করার কাজ করে, যেমন, ডাইনামিক ডেটা তৈরি করা বা কনফিগারেশন সেট করা।

Pre-Processor এর প্রয়োজনীয়তা

  1. ডেটা প্রস্তুতি: Pre-Processor ব্যবহার করে আপনি রিকোয়েস্টের আগে কিছু ডাইনামিক ডেটা প্রস্তুত করতে পারেন, যেমন API টোকেন বা সেশন আইডি, যা পরবর্তী রিকোয়েস্টে ব্যবহার করা হবে।
  2. রিকোয়েস্ট কনফিগারেশন: আপনি Pre-Processor ব্যবহার করে HTTP রিকোয়েস্টের বিভিন্ন অংশ কনফিগার করতে পারেন। যেমন রিকোয়েস্ট হেডার, প্যারামিটার ইত্যাদি।
  3. রিপিটিশন বা কন্ডিশনাল রিকোয়েস্ট: Pre-Processor ব্যবহার করে আপনি নির্দিষ্ট শর্তের উপর ভিত্তি করে রিকোয়েস্ট রান করতে পারেন।

Pre-Processor কনফিগারেশন

  1. Thread Group বা যেকোনো স্যাম্পলার-এ রাইট ক্লিক করুন।
  2. "Add" -> "Pre Processors" -> আপনার পছন্দের Pre-Processor সিলেক্ট করুন (যেমন BeanShell Pre-Processor বা Regular Expression Extractor)।
  3. স্ক্রিপ্ট বা কনফিগারেশন লিখুন যা রিকোয়েস্ট পাঠানোর আগে রান হবে।

উদাহরণ:

ধরা যাক, আপনি চান যে, রিকোয়েস্ট পাঠানোর আগে একটি র্যান্ডম নাম তৈরি করা হোক (যেমন BeanShell Pre-Processor ব্যবহার করে)। এখানে নিচের কোডটি লিখতে পারেন:

import java.util.Random;
String[] names = {"John", "Jane", "Mike", "Alice", "Bob"};
Random rand = new Random();
String randomName = names[rand.nextInt(names.length)];
vars.put("RandomName", randomName);

এটি BeanShell Pre-Processor হিসেবে কাজ করবে এবং RandomName ভ্যারিয়েবলটি আপনার HTTP রিকোয়েস্টের সাথে যুক্ত হবে। পরবর্তী HTTP Request-এ আপনি ${RandomName} ব্যবহার করতে পারবেন।


BeanShell Sampler এবং Pre-Processor এর মধ্যে পার্থক্য

দিকBeanShell SamplerPre-Processor
কার্যকলাপরিকোয়েস্টের মধ্যে স্ক্রিপ্ট বা কোড রান করারিকোয়েস্টের আগে কোড বা স্ক্রিপ্ট রান করা
ব্যবহারকাস্টম কোড বা স্ক্রিপ্ট তৈরি করতেডেটা প্রস্তুতি বা কনফিগারেশন পরিবর্তন করতে
সামঞ্জস্যসম্পূর্ণ স্ক্রিপ্ট লিখতে ব্যবহৃতরিকোয়েস্টের আগে ডেটা বা কনফিগারেশন সেট করার জন্য

সারাংশ

BeanShell Sampler এবং Pre-Processor হল জেমিটার টেস্ট কনফিগারেশনের অত্যন্ত শক্তিশালী উপাদান। BeanShell Sampler আপনাকে কাস্টম স্ক্রিপ্ট বা কোড রান করার সুযোগ দেয়, যা টেস্ট কেসকে আরও ডাইনামিক এবং কাস্টমাইজড করে তোলে। অন্যদিকে, Pre-Processor রিকোয়েস্টের আগে ডাইনামিক ডেটা তৈরি বা কনফিগারেশন পরিবর্তন করার জন্য ব্যবহৃত হয়। এই দুটি উপাদান একত্রে ব্যবহার করে আপনি জেমিটার টেস্ট কেসকে আরও কার্যকরী এবং বাস্তবসম্মত করে তুলতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...