skillup

技術ブログ

PHP

CakePHP2系でのテスト処理

投稿日:

cakePHP2系でのテストの処理について。

PHPでのテストといえばphpunitが有名かと思います。cakePHPでも標準でphpunitがはいっており、ユニットテストを行うことができます。

手順

composer.jsonでphpunitを読み込みます。

※最新バージョンが対応していないこともあるようなので注意が必要です。2.5.0では3.7系であれば対応しているようです。

またテスト用のデータベースが必要なので、こちらも追加しておきます。

実際のテストのファイルですがapp/Test/Case直下にファイルを置きます。Controller,Model,Viewとすでにディレクトリが用意されています。

例えばSampleというModelをテストしたい場合はModel直下にSampleTestなどとおきます。

あとはhttp://XXXXX/test.phpにアクセスすればテスト結果の一覧が表示されます。

純粋なテストだけではなくメソッド単位でのデバッグにも使えます。自分はそのために使っています。

参考リンク

細かい文法やデータベースとの各種連携などは公式ページである下記を参考に。

http://book.cakephp.org/2.0/ja/development/testing.html

http://qiita.com/masarufuruya/items/62fa6f137048a50dcc56

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

エラーハンドリング

エラーが起きた時にPHPだと画面に出ますが(出ない場合は画面が白くなります)、これを検知し、ログに吐いたり任意の処理をできるのがエラーハンドリングです。 フレームワークなどにはほぼこの仕組みが内在して …

no image

PHPにおけるstaticキャッシュ

PHPにおけるstaticキャッシュに関して。 PHPのおけるキャッシュはいくつかありまして、一般的にはmemcachedなどのKVS方式のキャッシュサーバーなどを使う方法が一般的かと思います。 キャ …

no image

Laravelの認証(独自テーブル仕様)

Laravelで独自の認証をしたいときに少々大変だったのでメモなどを。 *ディフォルトのテーブルはuserで認証項目もemailとpasswordと決まっています。 いじるところが色々ありまして、列挙 …

no image

PHPの名前空間

PHPでも5.3以降はJavaのパッケージのように名前空間を使うことができます。 いままではライブラリやアプリケーションの開発者は、PHPに組み込まれている関数やクラス名や他の人が作ったライブラリとの …

no image

phpQueryを使ったスクレイピングに関して

以前、スクレイピングに関してはこのエントリーでも紹介したとおり、phpに標準で入っているDOMDocumentを使う方法が一番楽です。 ところがデータによってはXMLで解析するため目的とする要素を取得 …