プロジェクトが大きくなりすぎて手動でテストできないようになったので、単体テストでカバーし始めました。現在、モデルの検証プロセスをテストするというジレンマに直面しています。
一方では、検証はモデルのロジックの一部であるため、テストする必要があるため、以下のような退屈なテストから始めました。
public function testNameRequired()
{
$this->object->name = '';
$this->assertFalse($this->object->validate(array('name')));
$this->object->name = 'Franky';
$this->assertTrue($this->object->validate(array('name')));
}
しかし一方で、バリデーター (組み込みを意味します) はフレームワークの一部であり、既にテストされているため、基本的に静的rules
配列をテストしています (偶発的なコード変更を追跡するのは VCS のタスクです)。
また、配列を受け入れて解析し、上記のようなテストを実行する、何らかの再利用可能なバリデーター テストを作成することも考えていましrules
たが、やはりフレームワーク テストを書き直すだけです。
質問は次のとおりです。
コードで検証をテストしますか? もしそうなら、どうやって?