লারাভেল (Laravel) ফ্রেমওয়ার্কের একটি শক্তিশালী ফিচার হল ব্রাউজার টেস্টিং (Browser Testing), যা ব্যবহারকারীর ইন্টারফেস (UI) এবং ব্রাউজার ইন্টারঅ্যাকশনের কার্যকারিতা পরীক্ষা করতে সহায়তা করে। লারাভেল ব্রাউজার টেস্টে, আপনি গুগল ক্রোমের মতো ব্রাউজারে স্বয়ংক্রিয়ভাবে পরীক্ষা চালাতে পারেন এবং নিশ্চিত করতে পারেন যে আপনার অ্যাপ্লিকেশনের ইউজার ইন্টারফেস সঠিকভাবে কাজ করছে।
ব্রাউজার টেস্টিং (Browser Testing) হল একটি পদ্ধতি যেখানে আপনি আপনার ওয়েব অ্যাপ্লিকেশনের ফ্রন্ট-এন্ড ইউজার ইন্টারফেসের কার্যকারিতা পরীক্ষা করেন। এটি আপনার অ্যাপ্লিকেশনের বিভিন্ন ব্রাউজারে বিভিন্ন পরিস্থিতিতে কিভাবে কাজ করবে তা নিশ্চিত করতে সহায়তা করে। ব্রাউজার টেস্টে, আপনি কেবল ডেটা পদ্ধতি বা ব্যাকএন্ড API নয়, বরং ইউজার ইন্টারফেস এবং ইউজার ইন্টারঅ্যাকশন পরীক্ষা করেন।
লারাভেল ব্রাউজার টেস্টিং করার জন্য কিছু টুলস প্রয়োজন হয়। এগুলোর মধ্যে অন্যতম হল:
প্রথমে, আপনাকে Laravel Dusk প্যাকেজটি ইনস্টল করতে হবে। এটি ইনস্টল করার জন্য Composer ব্যবহার করা হয়:
composer require --dev laravel/dusk
Laravel Dusk ইনস্টল করার পর, আপনাকে কিছু কনফিগারেশন করতে হবে। প্রথমে, DuskTestCase
ক্লাসটি চালু করতে হবে:
php artisan dusk:install
এটি .env.dusk.local
ফাইল এবং tests/DuskTestCase.php
ফাইল তৈরি করবে।
এখন আপনি নতুন একটি ব্রাউজার টেস্ট তৈরি করতে পারেন। উদাহরণস্বরূপ:
php artisan dusk:make ExampleTest
এটি tests/Browser/ExampleTest.php
ফাইল তৈরি করবে, যেখানে আপনি আপনার ব্রাউজার টেস্ট কোড লিখতে পারবেন।
আপনি ExampleTest.php
ফাইলে বিভিন্ন ব্রাউজার টেস্ট যোগ করতে পারেন। উদাহরণ:
namespace Tests\Browser;
use Tests\DuskTestCase;
use Laravel\Dusk\Browser;
use Illuminate\Foundation\Testing\DatabaseMigrations;
class ExampleTest extends DuskTestCase
{
use DatabaseMigrations;
/** @test */
public function a_user_can_visit_the_homepage()
{
$this->browse(function (Browser $browser) {
$browser->visit('/')
->assertSee('Welcome');
});
}
}
এই টেস্টটি আপনার অ্যাপ্লিকেশনের হোমপেজে গিয়ে সেখানে "Welcome" শব্দটি দেখা যাচ্ছে কিনা পরীক্ষা করবে।
এখন আপনি ব্রাউজার টেস্টটি চালাতে পারেন:
php artisan dusk
এই কমান্ডটি টেস্ট চালাবে এবং ব্রাউজার অটোমেশন পরীক্ষা করবে। Dusk ব্যাকএন্ডে একটি ক্রোম ব্রাউজার চালু করে এবং আপনাকে স্বয়ংক্রিয়ভাবে টেস্টটি সম্পন্ন করতে সাহায্য করবে।
আপনি টেস্টের সময় ব্রাউজারে উপাদানগুলোর ওপর ক্লিক করতে পারেন:
$browser->click('@login-button');
এখানে @login-button
হল CSS সিলেক্টর।
টেস্টের সময় আপনি ইনপুট ফিল্ডে ডেটা টাইপ করতে পারেন:
$browser->type('email', 'user@example.com');
টেস্টের সময় পেজ রিডিরেকশন পরীক্ষা করতে পারেন:
$browser->visit('/login')
->type('email', 'user@example.com')
->type('password', 'secret')
->press('Login')
->assertPathIs('/dashboard');
এটি পরীক্ষা করবে যে, লগিন করার পর ব্যবহারকারী dashboard
পৃষ্ঠায় রিডিরেক্ট হয়েছে কিনা।
$browser->assertSee('Dashboard');
এটি নিশ্চিত করবে যে, পেজে "Dashboard" শব্দটি রয়েছে।
লারাভেল ব্রাউজার টেস্টিং (Laravel Browser Test) একটি গুরুত্বপূর্ণ ফিচার যা আপনার অ্যাপ্লিকেশনের ইউজার ইন্টারফেস এবং ব্রাউজার ইন্টারঅ্যাকশন পরীক্ষা করার জন্য ব্যবহৃত হয়। Laravel Dusk ব্যবহার করে আপনি অটোমেটেড টেস্টিং করতে পারেন, যা আপনাকে UI ত্রুটিগুলি সহজে শনাক্ত করতে সাহায্য করে এবং উন্নত ডেভেলপমেন্ট প্রক্রিয়া নিশ্চিত করে।