最小的例子测试

给出一个简单的 PHP 类:

class Car
{
    private $speed = 0;

    public getSpeed() {
        return $this->speed;
    }

    public function accelerate($howMuch) {
        $this->speed += $howMuch;
    }
}

你可以编写一个 PHPUnit 测试,通过调用公共方法并检查它们是否按预期运行来测试被测试类的行为:

class CarTest extends PHPUnit_Framework_TestCase
{
    public function testThatInitalSpeedIsZero() {
        $car = new Car();
        $this->assertSame(0, $car->getSpeed());
    }

    public function testThatItAccelerates() {
        $car = new Car();
        $car->accelerate(20);
        $this->assertSame(20, $car->getSpeed());
    }

    public function testThatSpeedSumsUp() {
        $car = new Car();
        $car->accelerate(30);
        $car->accelerate(50);
        $this->assertSame(80, $car->getSpeed());
    }
}

重要部分:

  1. 测试类需要从 PHPUnit_Framework_TestCase 派生。
  2. 每个测试函数名称都应以前缀’test’开头
  3. 使用 $this->assert... 函数检查预期值。