parsa
5 سال پیش توسط parsa مطرح شد
3 پاسخ

طراحی سایت همراه با تست نویسی

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


ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

درود
حتما از توسعه آزمون محور (TDD) استفاده کنید ، این روش بسیار خوبیه
برای تست نویسی اولین کاری که باید بکنید اینه که تست رو بنویسید (مثلا اگر کاربر به آدرس مقالات رفت باید بتونه عنوان آخرین مقاله رو در اون صفحه ببینه) بعد و اجراش کنید (در صورتی که می‌دونیم در این مرحله به خطا می‌خوریم)
مثلا یه تست ساده شبیه زیر:

class ArticlesTest extends TestCase
{

    public function users_can_browse_articles()
    {
        $article = factory('App\Article')->create();

        $response = $this->get('/articles');

        $response->assertSee($article->title);

        $response->assertStatus(200);

    }

}

با اجرای این تست PHP unit به شما میگه که باید برای قدم بعد چه کار کنید اما مراحلش هم ساده است.

  • اولین چیزی که لازم دارید یه Route از نوع Get هست که درخواست نشان دادن مقالات رو یا در خودش اجرا کنه و یا به یک کنترلر پاس بده

    Route::get('/articles', 'ArticlesController@index');
  • سپس ساخت کنترلر، مدل و فایل مایگریشن

    php artisan make:controller ArticlesController
    php artisan make:model Article
    php artisan make:migration create_articles_table
  • فایل مایگریشن رو ادیت کنید و گزینه title رو هم اضافه کنید و سپس:

    php artisan migrate
  • حالا متد index رو در کنترلر بوجود میارید و داخلش از مدل استفاده میکنید تا همه مقالات رو لیست کنید و در یه View نمایش بدید

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


parsa
@parsahaghighi 5 سال پیش مطرح شد
0

خیلی ممنون از توضیحاتتون

میتونید یه منبع فارسی یا انگلیسی بهم معرفی کنید که assertion ها رو توضیح داده باشه؟ خیلی هاشونو نمیشناسم یا نمیدونم کارشو


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام