JasmineJS এর Test Runner আপনার টেস্ট কেসগুলো চালানোর জন্য ব্যবহৃত একটি টুল। এটি টেস্ট ফাইলগুলি খুঁজে বের করে এবং সেগুলি রান করায়। Jasmine এর ডিফল্ট টেস্ট রানার সরল এবং ব্যবহার উপযোগী, তবে আপনি সেটি কনফিগার করে আপনার প্রোজেক্টের প্রয়োজন অনুযায়ী সামঞ্জস্য করতে পারেন।
Jasmine এর ডিফল্ট কনফিগারেশন ফাইল
Jasmine এর কনফিগারেশন ফাইলটি jasmine.json নামক একটি JSON ফাইল হিসেবে থাকে। এই ফাইলটি Test Runner এর জন্য কিছু মৌলিক সেটিংস ধারণ করে, যেমন টেস্ট ফাইলের লোকেশন, সহায়িকা স্ক্রিপ্ট (helper scripts) এবং কিছু নির্দিষ্ট কনফিগারেশন অপশন।
কনফিগারেশন ফাইলের উদাহরণ
একটি সাধারণ jasmine.json ফাইলের উদাহরণ নিচে দেওয়া হলো:
{
"spec_dir": "spec",
"spec_files": [
"sumSpec.js",
"otherSpec.js"
],
"helpers": [
"helpers/**/*.js"
],
"stopSpecOnExpectationFailure": false,
"random": false
}
এখানে:
spec_dir: যেখানে টেস্ট ফাইলগুলো অবস্থান করবে। সাধারণত এটিspecডিরেক্টরিতে থাকে।spec_files: আপনার টেস্ট ফাইলগুলোর পাথ বা নামের তালিকা। আপনি চাইলে বিশেষ ডিরেক্টরি অথবা ফাইল প্যাটার্ন ব্যবহার করতে পারেন।helpers: আপনি যদি অতিরিক্ত সহায়িকা স্ক্রিপ্ট (helper scripts) ব্যবহার করতে চান, তবে তাদের পাথ এখানে উল্লেখ করবেন।stopSpecOnExpectationFailure: যদিtrueথাকে, তাহলে কোনো টেস্ট ব্যর্থ হলে পরবর্তী টেস্ট চালানো বন্ধ হয়ে যাবে।random: যদিtrueথাকে, তাহলে টেস্টগুলো এলোমেলোভাবে চালানো হবে। এটি বিশেষ করে টেস্টের অর্ডার পরিবর্তন করে দেখতে সহায়ক হতে পারে।
Jasmine Test Runner চালানো
আপনার কনফিগারেশন ফাইল তৈরি হয়ে গেলে, আপনি Jasmine Test Runner এর মাধ্যমে টেস্ট চালাতে পারেন। সাধারণত, Jasmine কমান্ড লাইনে চলে এবং টেস্ট রান করে। টেস্ট চালানোর জন্য নিচের কমান্ডটি ব্যবহার করুন:
npx jasmine
এটি আপনার jasmine.json কনফিগারেশন ফাইল অনুযায়ী সমস্ত টেস্ট চালাবে। আপনি যদি অন্য কোন কনফিগারেশন ফাইল ব্যবহার করতে চান, তাহলে --config অপশনটি ব্যবহার করে কনফিগারেশন ফাইলের পাথ নির্দিষ্ট করতে পারেন:
npx jasmine --config=path/to/custom/jasmine.json
কাস্টম স্ক্রিপ্ট বা ফোল্ডার কনফিগারেশন
আপনি যদি আপনার প্রোজেক্টে আরও কাস্টম টেস্ট ফোল্ডার এবং স্ক্রিপ্ট ব্যবহার করতে চান, তবে jasmine.json ফাইলটি কাস্টমাইজ করে নিতে পারেন। উদাহরণস্বরূপ, যদি আপনি বিভিন্ন ডিরেক্টরিতে টেস্ট ফাইল এবং সহায়িকা স্ক্রিপ্ট রাখতে চান, তাহলে আপনার কনফিগারেশন ফাইলটি এইভাবে দেখতে পারে:
{
"spec_dir": "tests",
"spec_files": [
"tests/**/*.js"
],
"helpers": [
"helpers/**/*.js"
],
"stopSpecOnExpectationFailure": true,
"random": true
}
এখানে:
tests/**/*.js: এর মানে হল যে সব.jsফাইল যেগুলিtestsডিরেক্টরির মধ্যে যেকোন সাবফোল্ডারে রয়েছে, সেগুলি টেস্ট ফাইল হিসেবে ব্যবহৃত হবে।helpers/**/*.js: এই পাথটি সকল সহায়িকা স্ক্রিপ্টগুলিকে অন্তর্ভুক্ত করবে।
Jasmine এর CLI অপশন
Jasmine এর সাথে কিছু কনফিগারেশন অপশনও রয়েছে যেগুলি আপনি টেস্ট চালানোর সময় ব্যবহার করতে পারেন। কিছু সাধারণ CLI অপশন হলো:
--verbose: এই অপশনটি টেস্টের আরও বিস্তারিত আউটপুট দেখায়।--help: Jasmine CLI অপশনগুলোর সাহায্য পেতে এই কমান্ডটি ব্যবহার করুন।--spec: শুধুমাত্র নির্দিষ্ট একটি টেস্ট ফাইল চালানোর জন্য ব্যবহার হয়।
উদাহরণ:
npx jasmine --verbose
এটি টেস্টের ফলাফল আরও বিস্তারিত আউটপুট হিসেবে দেখাবে।
সারাংশ
JasmineJS এর Test Runner কনফিগারেশন ফাইল (jasmine.json) এবং CLI অপশন দিয়ে আপনি টেস্ট চালানোর পদ্ধতিকে কাস্টমাইজ করতে পারেন। কিছু মৌলিক কনফিগারেশন অপশন যেমন:
spec_dir: টেস্ট ফাইলের লোকেশনspec_files: টেস্ট ফাইলগুলির নাম এবং পাথhelpers: সহায়িকা স্ক্রিপ্টstopSpecOnExpectationFailure: টেস্ট ফেইল হলে পরবর্তী টেস্ট বন্ধ করার অপশনrandom: টেস্টের অর্ডার এলোমেলো করার অপশন
আপনার প্রোজেক্টের চাহিদা অনুযায়ী এগুলোর কাস্টমাইজেশন করলে আপনি আরও কার্যকরী টেস্টিং প্রক্রিয়া তৈরি করতে পারবেন।
Read more