PHPUnitで配列操作のテストをしてみる。

PHPUnit5.7.0で配列操作のテストをしてみる。
参考にしたドキュメントのテストコード。

use PHPUnit\Framework\TestCase;

class StackTest extends Testcase
{
    public function testPushAndPop()
    {
        $stack = [];
        $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));
    }
}

テストを実行する。結果、すべてOKになった。


> phpunit test.php
PHPUnit 5.7.0 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 225 ms, Memory: 2.25MB

OK (1 test, 5 assertions)

試しに、配列の数が1つであることを確認している箇所を2にしてから実行する。
すると、当然だが、エラーが出力された。
2を予想しているところ、1だったこと。
テストコードの13行目で発生したこと。
3つ目のAssertでエラーが起きたこと。
などがわかる。


There was 1 failure:

1) StackTest::testPushAndPop
Failed asserting that 1 matches expected 2.

test.php:13

FAILURES!
Tests: 1, Assertions: 3, Failures: 1.

コメント

タイトルとURLをコピーしました