2. 编写 PHPUnit 测试

最后更新于:2022-04-01 03:44:24

# 第 2 章 编写 PHPUnit 测试 [Example 2.1, “用 PHPUnit 测试数组操作”](# "Example 2.1. 用 PHPUnit 测试数组操作")展示了如何用 PHPUnit 编写测试来对 PHP 数组操作进行测试。本例介绍了用 PHPUnit 编写测试的基本惯例与步骤: 1. 针对类 `Class` 的测试写在类 `ClassTest`中。 1. `ClassTest`(通常)继承自 `PHPUnit_Framework_TestCase`。 1. 测试都是命名为 `test*` 的公用方法。 也可以在方法的文档注释块(docblock)中使用 `@test` 标注将其标记为测试方法。 1. 在测试方法内,类似于 `assertEquals()`(参见 [Appendix A, *断言*](# "Appendix A. 断言"))这样的断言方法用来对实际值与预期值的匹配做出断言。 **Example 2.1. 用 PHPUnit 测试数组操作** ~~~ <?php class StackTest extends PHPUnit_Framework_TestCase { public function testPushAndPop() { $stack = array(); $this->assertEquals(0, count($stack)); array_push($stack, 'foo'); $this->assertEquals('foo', $stack[count($stack)-1]); $this->assertEquals(1, count($stack)); $this->assertEquals('foo', array_pop($stack)); $this->assertEquals(0, count($stack)); } } ?> ~~~ > 当你想把一些东西写到 print 语句或者调试表达式中时,别这么做,将其写成一个测试来代替。 > --Martin Fowler
';