Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ


PHP Knowledge เป็น บอร์ดรวามความรู้ php เน้นบทความ แนวทางการเขียนโปรแกรม บันทึกกันลืม เพื่อให้สมาชิกได้เขียนความรู้ที่ตัวเองมีให้สมาชิกท่านอื่นๆ ได้ เข้ามาอ่าน และ ไว้อ่านเองกันลืมด้วย

Moderators: mindphp, ผู้ดูแลกระดาน

Post Reply
thatsawan
PHP VIP Members
PHP VIP Members
Posts: 20037
Joined: 31/03/2014 10:02 am
Contact:

Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ

Post by thatsawan » 27/11/2014 1:28 pm

ในการ Run Unit test สิ่งเเรกที่จะต้องมี คือ ไฟล์ phpunit.bat
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-35-09.jpg
27-11-2557 12-35-09.jpg (103.75 KiB) Viewed 440 times
ในตัวอย่างการสร้างไฟล์เราได้ทำการศึกษาจาก http://symfony.com/doc/current/book/testing.html
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-36-06.jpg
27-11-2557 12-36-06.jpg (57.32 KiB) Viewed 440 times

Code: Select all

// src/Acme/DemoBundle/Utility/Calculator.php
namespace Acme\DemoBundle\Utility;

class Calculator
{
    public function add($a, $b)
    {
        return $a + $b;
    }
} 

Code: Select all

// src/Acme/DemoBundle/Tests/Utility/CalculatorTest.php
namespace Acme\DemoBundle\Tests\Utility;

use Acme\DemoBundle\Utility\Calculator;

class CalculatorTest extends \PHPUnit_Framework_TestCase
{
    public function testAdd()
    {
        $calc = new Calculator();
        $result = $calc->add(30, 12);

        // assert that your calculator added the numbers correctly!
        $this->assertEquals(42, $result);
    }
} 
วิธีการ Run เราจะ Run ผลการทำงานของ Unit test ผ่านทาง Command
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-37-26.jpg
27-11-2557 12-37-26.jpg (63.41 KiB) Viewed 440 times
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-38-16.jpg
27-11-2557 12-38-16.jpg (33.6 KiB) Viewed 440 times
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-44-44.jpg
27-11-2557 12-44-44.jpg (86.39 KiB) Viewed 440 times

Code: Select all

$result = $calc->add(30, 12);
กำหนดค่าที่เราจะทำการ Test

Code: Select all

$this->assertEquals(42, $result);
กำหนดค่าผลลัพท์ที่เราต้องการ
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-38-31.jpg
27-11-2557 12-38-31.jpg (38.61 KiB) Viewed 440 times
คำสั่งที่ใช้ในการ Run

Code: Select all

phpunit -c app src/Acme/DemoBundle/Tests/Utility/
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-40-28.jpg
27-11-2557 12-40-28.jpg (68.96 KiB) Viewed 440 times
ผลการ Run คำสั่ง Unit test ผ่านไม่มี Erorr
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-41-06.jpg
27-11-2557 12-41-06.jpg (88.05 KiB) Viewed 440 times
ที่นี่เรามาเปลี่ยนค่า ให้กับการ test

Code: Select all

$result = $calc->add(40, 12);
กำหนดค่าที่เราจะทำการ Test

Code: Select all

$this->assertEquals(42, $result);
กำหนดค่าผลลัพท์ที่เราต้องการ
Symfony2 FrameWork : การสร้าง Unit test และการ Run ไฟล์ แบบง่ายๆ 27-11-2557 12-41-58.jpg
27-11-2557 12-41-58.jpg (98.84 KiB) Viewed 440 times
ผลการ Run คำสั่ง Unit test ไม่ผ่าน มี Erorr เพราะว่าค่าที่ได้ไม่ต้องกับค่าที่เรากำหนดผลลัพท์ไว้

Post Reply

Return to “PHP Knowledge”

Users browsing this forum: No registered users and 8 guests