PHPUnitのアサーションについて

書いてないのもあるので修正が必要



論理値の検証

assertFalse

assertFalse(bool $condition[, string $msg = ''])

$conditionがfalseかどうか
assertNotFalse()はこの逆

assertTrue

assertTrue(bool $condition[, string $msg = ''])

$conditionがtrueかどうか
assertNotTrue()はこれの逆

assertIsBool

assertIsBool($actual[, string = ''])

$actualがboolかどうか
assertIsNotBool()はこの逆

空かどうかの検証

assertEmpty

assertEmpty(mixed $actual[, string $msg = '’])

$actualが空かどうか
assertNotEmpty()はこれの逆

assertNull

assertNull(mixed $variable[, string $msg = ''])

$variableNULLかどうか


等しいかどうか

assertEquals

assertEquals(mixed $expect, mixed $actual[, string $msg = ''])

$expect$actualが等しいかどうか
等しくない時に$msgを返す
assetNotEquals()はこの逆

assertEquals(float $expect, float $actual[, string $msg = '', float $delta = 0])

$expect$actualの差分が$delta以下かどうか
以上の時に$msgを返す

assertSame

assertSame(mixed $expect, mixed $actual[, string $msg = ''])

2つの変数$expect$actualが同じ型・同じ値かどうか
assertNotSame()はこれの逆


比較の検証

assertGreaterThan

assertGreaterThan(mixed $expect, mixed $actual[, string $msg = ''])

$actualの値が$expectの値より大きいかどうか
$expect < $actual
大きくない時に$msgを返す

assertGreaterThanOrEqual

assertGreaterThanOrEqual(mixed $expect, mixed $actual[,string $msg =''])

$actualの値が$expectの値を含み大きいかどうか
$expect <= $actual
以下の時に$msgを返す

assertLessThan

assertLessThan(mixed $expect, mixed $actual[, string $msg = ''])

$actualの値が$expectより小さいかどうか
$expect > $actual
小さくない時に$msgを返す

assertLessThanOrEqual

assertLessThanOrEqual(mixed $expect, mixed $actual[, string $msg = ''])

$actualの値が$expectの値を含み小さいかどうか
$expect >= $actual
以上の時に$msgを返す


配列の検証

assertIsArray

assertIsArray($acutual[,string $msg = ''])

$actualが配列かどうか
assertIsNotArray()はこの逆

assertArrayHasKey

assertArrayHasKey(mixed $key, array $array [, string $msg = ‘'])

$array配列に$keyキーが存在するかどうか
存在しないときにエラー$msgを返す
asserArrayNotHasKey()はこれの逆

assertArraySubset

assertArraySubset(array $subset, array $array [, bool $strict = false, string $msg = '']);

$array$subsetを含んでいるかどうか
含まない場合に$msgを返す
$stricttrueにすると型の比較まで行う
エラーログが$subsetをダンプするだけで、どこが違うかを教えてくれないのでわかりづらい

assertContains

assertContains(mixed $needle, iterable $haystack[, string $msg])

$needle$haystackに存在するかどうか
objectも検証可能
存在しない場合に$msgを返す
assertNotContains()はこれの逆

assertContainsOnly

assertContainsOnly(string $type, itrable $haystack[, bool $isNativeType = null, strig $msg = '’])

$haystackの中身の型が$typeだけかどうか
$typeだけじゃない時に$msgを返す
$isNaviteTypeクラスは$typeがネイティブなPHPの型であるかどうかを表す
assertNotContainsOnly()はこれの逆


オブジェクトの検証

assertObjectHasAttribute

assertObjectHasAttribute(string $attrName, object $obj[, string $msg = ''])

$obj->attrNameが存在するかどうか
assertObjectNotHasAttribute()はこれの逆


文字列の検証

assertContains

assertContains(string $needle, string $haystack[, string $msg], bool $ignoreCase = false])

$needle$haystackの文字列に含まれるかどうか
$ignoreCasetrueの時に大文字小文字を区別しない

assertIsString

assertIsString($actual[, $msg = ''])

$actualの型がstringかどうか
assertIsNotString()はこれの逆

assertStringMatchsFormat

assertStringMatchsFormat(string $format, string $string[, string $msg = ''])

$string が書式文字列$formatに一致しているかどうか

assertRegExp

assertRegExp(string $pattern, string $string[, string $msg = ''])

$string$patternに一致しているかどうか
assertNotRegExp()はこれの逆

assertStringEndsWith

assertStringEndsWith(string $suffix, string $string[, string $msg = ''])

$string$suffixで終わっているかどうか
assertStringEndsNotWith()はこれの逆

assertStringStartsWith

assertStringStartsWith(string $prefix, string $string[, string $msg = ''])

$string$prefixで始まっているかどうか
assertStringStartsNotWith()はこれの逆


数の検証

assertCount

assertCount($expect, $haystack[, string $msg = ''])

$haystackの要素数$expectと一致しているかどうか
assertNotCount()はこれの逆


クラスの検証

assertClassHasAttribute

assertClassHasAttribute(string $attrName, string $className, string $msg = ‘')

$classNameにプロパティ変数attrNameが存在するかどうか
存在しない場合に$msgを返す
assertClassNotHasAttribute()はこれの逆

assertClassHasStaticAttribute

assertClassHasStaticAttribute(string $attrName, string $className [, string $msg = ''])

$classNameに静的プロパティ$attrNameが存在するかどうか
存在しない場合に$msgを返す

assertContainsOnlyInstancesOf

assertContainsOnlyInstancesOf(string $className, Traversable|array $haystack[, string $msg = ''])

$haystack$classNameクラスの唯一のインスタンスを含むかどうか
含まない時に$msgを返す


その他の型の検証

assertIsFloat

assertIsFloat($actual[, string $msg =''])

$actualの型がfloatかどうか
assertIsNotFloat()はこれの逆

assertIsInt

assertIsInt($actual[, string $msg = ''])

$actualの型がintかどうか
assertIsNotInt()はこれの逆

assertIsInterable

assertIsInterable($actual[, string $msg])

$actualの型がintertableかどうか
assertIsNotInterable()はこれの逆

assertIsNumeric

assertIsNumeric($actual[, string $msg = ''])

$actualの型がnumericかどうか
assertIsNotNumeric()はこれの逆

assertIsObject

assertIsObject($actual[, string $msg = ''])

$actualの型がobjectかどうか
assetIsNotObject()はこれの逆

assertIsResource

assertIsResource($actual[, string $msg = ''])

$actualの型がresouceかどうか
assertIsNotResouce()はこれの逆

assertIsScalar

assertIsScalar($actual[, string $msg = ''])

$actualの型がscalar値かどうか
assertIsNotScalar()はこれの逆

assertIsCallable

assertIsCallable($actual[, string $msg])

$actualの型がcallableかどうか
assertIsNotCallable()はこの逆


その他の検証

assertInfinite

assertInfinite(mixed $variable[,string $msg])

$variableがINFかどうか
assertFinite()はこの逆

assertNan

assertNan(mixed $valiable[, string $msg= ''])

$valiableがNANかどうか

assertInstanceOf

assertInstanceOf($expect $actual[, string $msg= ''])

$actual$expectインスタンスかどうか
assertNotInstanceOf()はこの逆

assertEqualXMLStructure

assertEqualXMLStructure(DOMElement $expect, DOMElement $actual[, bool $checkAttr = false, $msg = ''])

$actualのDOMElementのXML構造が$expectのDOMElementのXML構造と等しいかどうか


ファイル・ディレクトリの検証

assertIsReadable

assertIsReadable($actual[, string $msg = ''])

$actualに指定したファイルもしくはディレクトリが読み込み可能かどうか
読み込み不可の場合は$msgを返す
assertNotIsReadable()はこれの逆

assertIsWritable

assertIsWritable($actual[, string $msg = ''])

$actualに指定したファイルもしくはディレクトリが書き込み可能かどうか
書き込み不可の場合は$msgを返す
assertNotIsWritable()はこれの逆

assertDirectoryExsits

assertDirectoryExsits(string $dir[, string $msg = ''])

$dirで指定したディレクトリが存在するかどうか
存在しない時に$msgを返す
assertDirectoryNotExists()はこれの逆

assertDirectoryIsReadable

assertDirectoryIsReadable(string $dir[, string $msg = ''])

$dirで指定したディレクトリが読み込み可能かどうか
読み込み不可の時に$msgを返す
assertDirectoryNotIsReadable()はこれの逆

assertDirectoryIsWritable

assertDirectoryIsWritable(string $dir[, string $msg = ''])

$dirで指定したディレクトリが書き込み可能かどうか
書き込み不可の時に$msgを返す
assertDirectoryNotIsWritable()はこれの逆

assertFileEquals

assertFileEquals(string $expect, string $actual[, string $msg = ''])

$expectで指定したファイルと$actualで指定したファイルの内容が等しいかどうか
異なる場合に$msgを返す
assertFileNotEquals()はこの逆

assertFileExists

assertFileExists(string $fileName[, string $msg = ''])

ファイル$fileNameが存在するかどうか
存在しない時は$msgを返す
assertFileNotExists()はこの逆

assertFilesReadable

assertFilesReadable(string $fileName[, string $msg = ''])

$fileNameで指定したファイルが読み込み可能かどうか
読み込み不可の場合は$msgを返す
assertFilesNotReadable()はこの逆

assertFilesWritable

assertFilesWritable(string $fileName[, string $msg = ''])

$fileNameで指定したファイルが書き込み可能かどうか
書き込み不可の時には$msgを返す
assertFilesNotWritable()はこの逆

JSONの検証

assertJsonFileEqualsJsonFile

assertJsonFileEqualsJsonFile(mixed $expectFile, mixed $actualFile[, srtring $msg])

$actualFile$expectFileの内容がJSONとして等しいかどうか

assertJsonStringEqualsJsonFile

assertJsonStringEqualsJsonFile(mixed $expectFile, mixed $actualJson[, string $msg = ''])

$actualJsonの値が$expectFileの値と等しいかどうか

assertJsonStringEqualJsonString

assertJsonStringEqualJsonString(mixed $expectJson, mixed $actualJson[, string $msg =''])

$actualJsonの値が$expectJsonの値と等しいかどうか


参考にしたサイト

phpunit.readthedocs.io