assertFoo($expected, $actual)
のようなカスタムアサーションを作成するにはどうしたらよいですか?エラーは「スタックトレース」に関して組み込みのアサーションのように振る舞いますか?組み込みのアサーションのように動作するカスタムPHPUnitアサーションを作成するには?
私は現在、(PHPUnit_Framework_TestCase
を拡張するクラス内)が定義され、以下の方法があります。
public static function assertFoo($expected, $actual) {
self::assertEquals($expected, $actual);
}
を
1) PreferencesTest::testSignupTeacher
Failed asserting that 5 matches expected 3.
/vagrant/myproject/tests/integration/PreferencesTest.php:17
/vagrant/myproject/tests/integration/PreferencesTest.php:136
ここで、assertFoo()
は組み込みのassertEquals()
を呼び出して失敗します。 136行目にはassertFoo()
が呼び出されています。
私が直接assertEquals()
を呼び出すためのテストを変更した場合、私は一つだけを得る:
1) PreferencesTest::testSignupTeacher
Failed asserting that 3 is true.
/vagrant/myproject/tests/integration/PreferencesTest.php:136
一部documentation in the manualがありますが、これをカバーしていないようです。
assertFoo()関数のコードを表示できますか? –
@DarrenCook確かに更新されました。 – mjs