PhpStormからPHPUnitを使い単体テストするときのメモ。
既にXAMPP for Mac 1.7.1はインストール済みとする。
今回はXAMPP for MacのPHPインタプリタを使う[1]。
PHPUnitはPEARを使いインストールする。pearコマンドはPHPと一緒にインストールされる[2]。
インストールはroot権限が必要だったのでsudoコマンドを使った。
$ pear config-set auto_discover 1
$ pear install pear.phpunit.de/PHPUnit
PHPUnitの正常にインストールされたことを確認する。
$ phpunit --version
PHPUnit 3.6.12 by Sebastian Bergmann.
PHPUnitのインストールパス。
/Applications/XAMPP/xamppfiles/lib/php/pear/PHPUnit
Setting > PHP > interpreter
command , -> PHP -> インタプリタを設定する
テストされるクラスCalc, Calcをテストするクラス(テストクラス, テストケース)CalcTestを用意。
<?php
require_once("Calc.php");
class CalcTest extends PHPUnit_Framework_TestCase {
private $calc;
protected function setUp()
{
$this->calc = new Calc(10);
}
public function testAdd()
{
$this->assertEquals(15, $this->calc->add(5));
}
}
<?php
class Calc {
private $value;
public function __construct($value = 0) {
$this->value = $value;
}
public function add($value) {
return $this->value + $value;
}
}
プロジェクトを開いてRun > Edit configurationsでテストを追加する。
下記のように設定する。
Runでテストを実行する。
テストの横のボタンでステップ実行できる
1. MacはデフォルトでPHPが/usr/bin/phpにインストールされている。今回はXAMPPをインストールしているのでXAMPPのPHPインタプリタを使う。
PHPのパスは/Applications/XAMPP/xamppfiles/bin/php-5.3.1。
2 PEARコマンドもXAMPPにインストールされているものを使う。
pearのパス /Applications/XAMPP/xamppfiles/lib/php/pear
3
/Applications/XAMPP/xamppfiles/path/to/text.php # これはうまく行かない
# xamplefilesを含むと Error file is not specified or invalid
/Applications/XAMPP/path/to/text.php # xamppfilesを省くとうまくいく
[…] PHPUnit Manual 第1回 PHPUnitの概要と導入 | Think IT https://findxfine.com/programming/php/995557148.html […]
改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。