JasmineJS এ Built-in Reporters ব্যবহার করার মাধ্যমে আপনি আপনার টেস্ট রানিংয়ের পরিপ্রেক্ষিতে রিপোর্ট দেখতে পারেন। Jasmine এর দুটি প্রাথমিক বিল্ট-ইন রিপোর্টার হল Spec Reporter এবং Dot Reporter। এই রিপোর্টারগুলি টেস্টের অবস্থা ও ফলাফল সম্পর্কে সহজ এবং পরিষ্কার তথ্য সরবরাহ করে, যা টেস্ট রান করার পর আপনি দ্রুত জানতে পারবেন কোন টেস্টগুলি সফল হয়েছে এবং কোনগুলো ব্যর্থ হয়েছে।
Spec Reporter
Spec Reporter হলো JasmineJS এর ডিফল্ট রিপোর্টার। এটি টেস্টের বিস্তারিত আউটপুট দেখায়, যেখানে প্রতিটি টেস্ট কেসের নাম এবং তার সফল বা ব্যর্থ হওয়ার তথ্য প্রদর্শিত হয়। এটি সাধারণত ডেভেলপারদের জন্য উপকারী, যেহেতু এটি তাদেরকে টেস্টের সঠিক ফলাফল এবং তার বিবরণ সরবরাহ করে।
Spec Reporter এর আউটপুট
Spec Reporter এর মাধ্যমে আপনি টেস্টের বিস্তারিত আউটপুট দেখতে পারবেন, যেমন:
- প্রতিটি টেস্টের নাম
- টেস্টের ফলাফল (pass/fail)
- যদি কোনো টেস্ট ব্যর্থ হয়, তবে ত্রুটির বিবরণ
My spec suite
√ should add two numbers correctly
√ should subtract numbers correctly
× should multiply numbers correctly (1 failed)
Failures:
1) My spec suite should multiply numbers correctly
Error: Expected 6 to equal 12.
Spec Reporter কনফিগারেশন
JasmineJS এর Spec Reporter কনফিগারেশন করার জন্য, আপনাকে Jasmine এর কনফিগারেশন ফাইলে (যেমন jasmine.json) রিপোর্টারটি সক্ষম করতে হবে।
// jasmine.json কনফিগারেশন ফাইল
{
"spec_dir": "spec",
"spec_files": [
"tests/**/*.js"
],
"helpers": [
"helpers/**/*.js"
],
"reporters": [
"spec" // Spec Reporter ইনস্টল করা
]
}
এছাড়া, JasmineCLI ব্যবহার করে Spec Reporter সক্ষম করা সম্ভব:
jasmine --reporter=spec
Dot Reporter
Dot Reporter হলো আরেকটি বিল্ট-ইন রিপোর্টার যা টেস্টের ফলাফলকে ডট (.) এবং এক্স (x) চিহ্নের মাধ্যমে প্রদর্শন করে। প্রতিটি টেস্টের জন্য একটি ডট (.) ব্যবহার করা হয় যদি টেস্টটি সফল হয় এবং এক্স (x) ব্যবহার করা হয় যদি টেস্টটি ব্যর্থ হয়। এই রিপোর্টারটি দ্রুত, সংক্ষিপ্ত আউটপুট প্রদান করে, যা বিশেষভাবে উপকারী যখন আপনি বড় স্যুট বা অনেক টেস্ট চালাচ্ছেন এবং পুরো টেস্টের ফলাফল দেখতে চান দ্রুত।
Dot Reporter এর আউটপুট
Dot Reporter এর আউটপুট খুবই সংক্ষিপ্ত থাকে:
....x....x..x.....
এখানে:
.: সফল টেস্ট কেসx: ব্যর্থ টেস্ট কেস
এটি একটি খুব দ্রুত এবং কমপ্যাক্ট পদ্ধতি, যেখানে আপনি সহজেই জানতে পারেন কতটি টেস্ট সফল হয়েছে এবং কতটি ব্যর্থ হয়েছে।
Dot Reporter কনফিগারেশন
Dot Reporter কনফিগার করতে, Jasmine এর কনফিগারেশন ফাইলে রিপোর্টারটি যোগ করতে হবে।
// jasmine.json কনফিগারেশন ফাইল
{
"spec_dir": "spec",
"spec_files": [
"tests/**/*.js"
],
"helpers": [
"helpers/**/*.js"
],
"reporters": [
"dot" // Dot Reporter ইনস্টল করা
]
}
এছাড়া, JasmineCLI ব্যবহার করে Dot Reporter সক্ষম করা সম্ভব:
jasmine --reporter=dot
Spec Reporter এবং Dot Reporter এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | Spec Reporter | Dot Reporter |
|---|---|---|
| আউটপুট স্টাইল | বিস্তারিত আউটপুট (পাস/ফেইল সহ) | কমপ্যাক্ট আউটপুট (ডট/এক্স চিহ্ন) |
| ব্যবহারের সুবিধা | টেস্টের বিস্তারিত ফলাফল জানতে সুবিধাজনক | দ্রুত এবং কমপ্যাক্ট আউটপুট, বড় স্যুটে উপকারী |
| ত্রুটির বিবরণ | ব্যর্থ টেস্টের বিস্তারিত ত্রুটি বার্তা | ব্যর্থ টেস্টের কোনো বিস্তারিত বার্তা নেই |
JasmineJS এ কাস্টম রিপোর্টার ব্যবহার করা
JasmineJS তে আপনি আপনার কাস্টম রিপোর্টারও তৈরি করতে পারেন। কাস্টম রিপোর্টার তৈরির জন্য আপনাকে Jasmine এর CustomReporter ইন্টারফেস অনুসরণ করতে হবে এবং প্রয়োজনীয় ফাংশন যেমন specDone বা suiteDone ইমপ্লিমেন্ট করতে হবে।
function CustomReporter() {
this.specDone = function(result) {
console.log(result.status + ": " + result.fullName);
};
}
jasmine.getEnv().addReporter(new CustomReporter());
এখানে CustomReporter ক্লাস একটি সহজ কাস্টম রিপোর্টার তৈরি করেছে, যা প্রতিটি টেস্টের ফলাফল কনসোলে লগ করবে।
সারাংশ
JasmineJS এর Built-in Reporters যেমন Spec Reporter এবং Dot Reporter আপনাকে টেস্টের ফলাফল প্রদর্শনে সহায়তা করে। Spec Reporter বিস্তারিত আউটপুট সরবরাহ করে, যেখানে প্রতিটি টেস্টের নাম এবং তার ফলাফল দেখানো হয়, এবং Dot Reporter কমপ্যাক্ট আউটপুট প্রদর্শন করে যা দ্রুত ফলাফল জানাতে উপকারী। আপনি চাইলে JasmineJS এ কাস্টম রিপোর্টারও তৈরি করতে পারেন আপনার নির্দিষ্ট প্রয়োজন অনুসারে।
Read more