目次
kahlanとは?
- PHP用のユニットテストのテストフレームワークで、RSpecやJSpecに類似した「describe-it」構文を採用している。
- composerのオートローダーに依存しているのでLaravelやSymfonyなどの人気のPHPフレームワークにも容易に導入できる。
- kahlan公式サイト
kahlan利用のメリット
- compoer install後、すぐ利用可能
- describe-it構文によりテストが読みやすく、追加時にも分かりやすい
kahlan利用のデメリット
- PHPStormとの連携ができない
- 資料が少ない
使ってみる
kahlanのインストール
- 事前にPHP環境が必要なのでMacの方はMacのPHP環境を最速で構築するもご覧ください。
composer require --dev kahlan/kahlanテストを書いてみる
- specフォルダを作成し、[任意の名前].spec.phpを追加します
- 以下の例はLaravelプロジェクトに追加する例です
app
・
・
spec
└── app
    └── Http
        └── Controllers
            └── SampleController.spec.php- SampleController.spec.php
- kahlanのアサートはactualから書く
 
<?php
describe('sample controller test', function() {
    context('request test', function() {
        it('error', function() {
            // expect(actual)->toBe(expected)
            expect(true)->toBe(true);
        });
    });
});テストを実行する
vendor/bin/kahlan
            _     _
  /\ /\__ _| |__ | | __ _ _ __
 / //_/ _` | '_ \| |/ _` | '_ \
/ __ \ (_| | | | | | (_| | | | |
\/  \/\__,_|_| |_|_|\__,_|_| |_|
The PHP Test Framework for Freedom, Truth and Justice.
src directory  : 
spec directory : /Users/hoge/factory/blog/kahlan/spec
.                                                                   1 / 1 (100%)
Expectations   : 1 Executed
Specifications : 0 Pending, 0 Excluded, 0 Skipped
Passed 1 of 1 PASS in 0.005 seconds (using 7MB)
 
	 
			