Regular Expression Extractor এবং JDBC Post-Processor

Pre-Processors এবং Post-Processors - জেমিটার (jmeter) - Java Technologies

307

জেমিটার (JMeter) একটি শক্তিশালী টুল যা ওয়েব অ্যাপ্লিকেশন, সার্ভার, এবং ডেটাবেসের পারফরম্যান্স টেস্টিংয়ের জন্য ব্যবহৃত হয়। এতে অনেক ধরনের প্রসেসর (Processor) এবং এক্সট্রাকটর (Extractor) রয়েছে যা টেস্টিং প্রক্রিয়ায় গুরুত্বপূর্ণ ভূমিকা পালন করে। দুটি গুরুত্বপূর্ণ উপাদান হলো Regular Expression Extractor এবং JDBC Post-Processor। এই দুটি উপাদান বিভিন্ন ধরনের ডেটা এক্সট্র্যাকশন এবং প্রক্রিয়াকরণের জন্য ব্যবহৃত হয়।


Regular Expression Extractor

Regular Expression Extractor (RE Extractor) হলো একটি জেমিটার প্রিপোস্ট প্রসেসর (Pre-Processor) যা একটি রেগুলার এক্সপ্রেশন ব্যবহার করে জেসুপ রেসপন্স থেকে নির্দিষ্ট ডেটা এক্সট্র্যাক্ট করতে সাহায্য করে। এটি সার্ভার থেকে পাওয়া রেসপন্স বা পেজের মধ্যে থেকে ডাইনামিক ডেটা যেমন, টোকেন, আইডি বা অন্যান্য ভ্যালু বের করতে ব্যবহৃত হয়।

Regular Expression Extractor কনফিগারেশন

  1. Test Plan > Thread Group > Add > Post Processors > Regular Expression Extractor নির্বাচন করুন।
  2. রেগুলার এক্সপ্রেশন এক্সট্রাক্টরের কিছু গুরুত্বপূর্ণ ফিল্ড:
    • Name of created variable: এখানে আপনি যেই ডেটাটি এক্সট্র্যাক্ট করবেন, তার জন্য একটি ভেরিয়েবল নাম দিন। উদাহরণস্বরূপ, userToken
    • Regular Expression: এটি হলো রেগুলার এক্সপ্রেশন যা আপনি সার্ভার রেসপন্সের মধ্যে ডেটা এক্সট্র্যাক্ট করার জন্য ব্যবহার করবেন। উদাহরণ: name="userToken" value="(.+?)".
    • Template: এটি ঐ এক্সপ্রেশন থেকে এক্সট্র্যাক্ট করা ভ্যালুর টেমপ্লেট। সাধারণত $1$ (যেখানে $1$ প্রথম ক্যাপচার গ্রুপের মান নির্দেশ করে)।
    • Match No.: যদি একাধিক ম্যাচ হয় তবে আপনি কোনটা নির্বাচন করবেন তা নির্ধারণ করতে এটি ব্যবহার করুন। 0 দিয়ে আপনি সমস্ত ম্যাচ বের করতে পারেন।
    • Default Value: যদি এক্সপ্রেশন কোন ম্যাচ না করে, তাহলে আপনি একটি ডিফল্ট ভ্যালু ব্যবহার করতে পারেন, যেমন "NOT_FOUND"

উদাহরণ

ধরা যাক, সার্ভার থেকে একটি HTML রেসপন্স আসছে যেখানে একটি ডাইনামিক টোকেন রয়েছে:

<input type="hidden" name="userToken" value="abc123xyz" />

আপনি এই টোকেনটি এক্সট্র্যাক্ট করতে চাইছেন। তাহলে রেগুলার এক্সপ্রেশন হবে:

  • Regular Expression: name="userToken" value="(.+?)"
  • Template: $1$ (যেহেতু এটি প্রথম ক্যাপচার গ্রুপ)
  • Match No.: 1 (প্রথম ম্যাচ)
  • Default Value: NOT_FOUND

এই কনফিগারেশনে, userToken ভেরিয়েবলটি abc123xyz হিসেবে এক্সট্র্যাক্ট হবে।


JDBC Post-Processor

JDBC Post-Processor হলো একটি JMeter প্রসেসর যা JDBC Request স্যাম্পলারের পরবর্তী প্রক্রিয়ায় ব্যবহৃত হয়। এটি ডাটাবেসের রেসপন্স থেকে ডেটা এক্সট্র্যাক্ট করতে এবং সেই ডেটাকে পরবর্তী টেস্টে ব্যবহার করতে সাহায্য করে। সাধারণত এটি SQL Query এর রেসপন্স থেকে ডেটা বের করতে ব্যবহৃত হয় এবং সেই ডেটা পরবর্তী স্ক্রিপ্ট বা রিকোয়েস্টে ব্যবহার করা হয়।

JDBC Post-Processor কনফিগারেশন

  1. Test Plan > Thread Group > Add > Post Processors > JDBC Post-Processor নির্বাচন করুন।
  2. JDBC Post-Processor কনফিগার করার জন্য কিছু ফিল্ড রয়েছে:
    • Variable Name: আপনি যে ডেটা এক্সট্র্যাক্ট করতে চান তা এক্সট্র্যাক্ট করার জন্য একটি ভেরিয়েবল নাম নির্বাচন করুন।
    • Query: SQL কুয়েরি যা আপনি চালাতে চান। উদাহরণস্বরূপ, SELECT user_id FROM users WHERE user_name = 'john'.
    • Result Variable: এই ভেরিয়েবলে SQL রেসপন্সের ফলাফল সংরক্ষণ করা হবে। যেমন: userID.
    • Default Value: যদি SQL কুয়েরি কোনও ডেটা না ফেরায়, তবে ডিফল্ট মান ব্যবহার করা হবে।

উদাহরণ

ধরা যাক, আপনি একটি ডাটাবেস থেকে ব্যবহারকারীর আইডি এক্সট্র্যাক্ট করতে চান, যেখানে user_name = 'john'

  1. JDBC Request স্যাম্পলার তৈরি করুন এবং একটি SQL কুয়েরি (যেমন: SELECT user_id FROM users WHERE user_name = 'john') চালান।
  2. JDBC Post-Processor ব্যবহার করুন:
    • Variable Name: userID
    • Query: SELECT user_id FROM users WHERE user_name = 'john'
    • Result Variable: userID
    • Default Value: NOT_FOUND

এই কনফিগারেশনের মাধ্যমে, আপনি userID ভেরিয়েবলটিতে ব্যবহারকারীর আইডি (যেমন: 12345) সংরক্ষণ করতে পারবেন, যা পরবর্তী রিকোয়েস্টে ব্যবহৃত হবে।


সারাংশ

জেমিটার (JMeter) Regular Expression Extractor এবং JDBC Post-Processor দুটি গুরুত্বপূর্ণ উপাদান যা টেস্ট স্ক্রিপ্টে ডেটা এক্সট্র্যাকশন এবং প্রক্রিয়াকরণে সাহায্য করে। Regular Expression Extractor ব্যবহার করে আপনি সার্ভারের রেসপন্স থেকে ডাইনামিক ডেটা (যেমন টোকেন, আইডি) এক্সট্র্যাক্ট করতে পারেন, এবং JDBC Post-Processor ব্যবহার করে আপনি ডাটাবেস রেসপন্স থেকে ডেটা বের করে পরবর্তী রিকোয়েস্টে ব্যবহার করতে পারেন। এই দুটি উপাদান আপনার ওয়েব স্ক্র্যাপিং বা লোড টেস্টিং স্ক্রিপ্টকে আরও শক্তিশালী এবং ডাইনামিক করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...