استفاده از phpunit در لاراول 5/5 (1)

0
615
فریم ورک لاراول

در این آموزش قصد داریم تا با نحوه نصب phpunit بر روی سیستم عامل های لینوکسی و استفاده از آن در فریم ورک محبوب لاراول آشنا شویم. اگر نمی دانید phpunit چیست، به طور ساده می توان آن را ابزاری برای تست پروژه های PHP دانست. در فریم ورک لاراول نیز امکاناتی برای استفاده از این ابزار به منظور تست بخش های مختلف پروژه در نظر گرفته شده است. در نتیجه ابتدا نحوه نصب این ابزار را فرا خواهیم گرفت و سپس به کمک آن و امکانات داخلی لاراول سعی در تست پروژه خود می نماییم.

[divider]

نصب PHPUnit

برای نصب این ابزار باید دستور زیر را در ترمینال وارد کنید:


sudo apt-get install phpunit

پس از نصب phpunit باید محدودیت فانکشن های تو در تو را از مقدار پیشفرض ۱۰۰ به ۵۰۰ تغییر دهید. برای این کار باید فایل تنطیمات phpunit را به کمک دستور زیر بازکنید:

sudo nano /etc/php5/mods-available/xdebug.ini

و خط زیر را به انتهای فایل بیافزایید و تغییرات را ذخیره کنید:

xdebug.max_nesting_level=500

البته تنظیمات فوق برای PHP نسخه ۵٫x مورد نیاز است و اگر از PHP نسخه ۷٫x استفاده کنید، نیازی به اعمال تنظیمات نیست.

[divider]

نحوه استفاده از phpunit در لاراول

زمانی که یک پروژه لاراول جدید می سازید. همانطور که در ابتدا گفتیم، یک پوشه به نام tests ایجاد می گردد که محل نوشتن آزمون های مربوط به پروژه است. در داخل این پوشه یک تست نمونه قرار دارد. می توانید این تست را ویرایش نموده و یا با دستور زیر تست های جدید ایجاد کنید:

php artisan make:test UserTest

 

آزمون شما می تواند به سادگی بازدید از یک صفحه و یا به پیچیدگی ارسال اتوماتیک فرم های موجود در پروژه باشد. خوشبختانه به کمک امکاناتی که در لاراول پیش بینی شده، همه این آزمون ها به سادگی قابل طراحی هستند! به مثال زیر توجه کنید:

<?php
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;

class ExampleTest extends TestCase
{
    /**
     * A basic functional test example.
     *
     * @return void
     */
    public function testBasicExample()
    {
       $this-&gt;visit('/') //visit main page
             -&gt;click('Login') //click on login button
             -&gt;see('Login'); //search for 'Login' string in page
    }
}

 

همانطور که در مثال بالا نمایان است، در این آزمون ابتدا از صفحه اصلی سایت دیدن می کنیم و سپس در این صفحه بر روی لینک Login کلیک کرده و به فرم لاگین منتقل می شویم. در انتها نیز بررسی میکنیم که آیا در صفحه مقصد عبارت Login وجود دارد یا خیر

اجرای تست

پس از ایجاد و طراحی تست(ها) تنها کافیست به کمک ترمینال به دایرکتوری پروژه بروید و دستور زیر را وارد کنید:

./vendor/bin/phpunit

با اینکار تمام آزمون هایی که در پوشه tests قرار دارند اجرا خواهند شد و خروجی هر آزمون را در ترمینال خواهید دید. به طور مثال خروجی تستی که به عنوان مثال عرضه شد اینگونه خواهد بود:

phpunit example output

همانطور که در تصویر می بینید مدت زمان اجرای این آزمون ۲۴۳ میلی ثانیه و میزان حافظه مصرف شده ۱۵٫۵۰ مگابایت است. همچنین تعداد تست ها یک عدد بوده و ۳ قسمت مجزا وجود داشته است.

موفق و پیروز باشید…

به این مطلب امتیاز بدهید

ارسال یک پاسخ

لطفا دیدگاه خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید