Codeigniter/PHPUnitでテストする

Codeigniter/PHPUnitでテストする

PHPUnitのインストール

Ubuntuならばaptとかでドンで入る

CIUnitのインストール

CIのオブジェクトの生成等をPHPUnitに対応させるための拡張をインストールする。

もともとCIUnitはあったらしいのだがCI2.0以降に対応してないらしく、独自で対応しているフォーク版があるのでそれを使わせてもらう kenjis / my-ciunit / ダウンロード — Bitbucket ここの、ブランチのところに2.0.3対応版があるのでこいつを使う

downloadして解凍、説明に従ってコピーするだけ

モデルのテストを作る

テストクラスを

tests/models/UserTest.php

のように作る。

通常

$this->load->model('User', 'user');

のようにしてインスタンス化するところをテストクラス内では

$this->CI->load->model('User', 'user');

のように行う

これによりインスタンス化されたモデルは

public function testGetHoge()
{
    $this->assertEquals($this->CI->user->getHoge(), "hoge");
}

このように呼び出してテストする。

テストを実行する

tests

ディレクトリの階層で

$ phpunit modules/UserTest

とテストクラスを指定することでテストが実行される

Tag

php/codeigniter/test_with_phpunit.txt · 最終更新: 2017-09-26 18:59 by ore