*

[php] プログラマ2年生がPHPUnit始めてみた

公開日: : 最終更新日:2014/07/22 php

何度も挫折していたテスト自動化ですが、こちらのエントリーを読んで前に進めそうです。
3分でできる俺PHPテスト環境

ポイントはcomposerを使って必要なライブラリを簡単に用意できることです。
composerは外部ライブラリをバージョン込みで一元管理してくれるツールです。

全体の手順

1.composerダウンロード
2.composer設定ファイル設置
3.composerインストール
4.テスト作成
5.テスト実行
6.テスト自動実行

作業内容

# 1.composerダウンロード

$ mkdir /var/www/composer
$ cd /var/www/composer
$ curl -s https://getcomposer.org/installer | php

# 2.composer設定ファイル設置
$ pwd
$ vi composer.json
{
  "require": {
    "phake/phake": "v1.0.3",
    "piece/stagehand-testrunner": "v3.5.0"
  },
  "require-dev": {
      "phpunit/phpunit": "3.7.*"
  }
}

# 3.インストール
$ php composer.phar install

4.テスト作成
プロジェクト内の適当なフォルダにPHPUnitのテストクラスを作成します。

# この中にテストクラスを作成する
$ mkdir /var/www/hoge/tests

5.テスト実行

# testsフォルダとサブフォルダ内のテストを全て実行
$ ./vendor/bin/phpunit --tap /var/www/hoge/tests

# --filterで指定した文字列を含むテストのみ実行する
$ ./vendor/bin/phpunit --tap --filter "Hoge" /var/www/hoge/tests

6.テスト自動実行

# はじめに1回だけ実行
$ ./vendor/bin/testrunner compile -p vendor/autoload.php

# テストフォルダの更新監視を開始
$ ./vendor/bin/testrunner phpunit -p vendor/autoload.php -a /var/www/hoge/tests

これでテストクラスを更新する度に自動でテストが実行されるようになります。

以上

関連記事

no image

【php】メッセージをログファイルに吐いてデバッグする

javascriptであればfirebugで簡単にデバッグできるのですが、サーバー側で動くphpなど

記事を読む

no image

【php】MySQLを操作する

MySQLを操作する際のテンプレ //DBに接続する //直近に実行された MySQ

記事を読む

no image

【php】UserClassでアカウント管理を実装してみる

大抵のフレームワークにはアカウント管理のモジュールがあると思いますが、 「フレームワークを使う

記事を読む

no image

【php】基礎のPHP速習トレーニング

//インポート require_once dirname(__FILE__) . '/he

記事を読む

Message

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

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

no image
知らないと損をする6つのライセンスまとめ

オープンソースやフリーウェア、フリー素材などが巷に溢れ、それらを利用す

no image
ガリレオ:ニュースブラウザをリリースしました。

概要 ガリレオはニュースを読んだり、検索する機能に特化したブラウザア

no image
【android】Activityとプロセスのライフサイクル

またもやライフサイクル周りでハマったのですが、Androidのライフサ

→もっと見る

PAGE TOP ↑