📜  PHPUnit | assertArraySubset()函数

📅  最后修改于: 2022-05-13 01:57:39.768000             🧑  作者: Mango

PHPUnit | assertArraySubset()函数

assertArraySubset ()函数是 PHPUnit 中的内置函数,用于断言具有子集的数组。如果数组包含提供的子集,则此断言将返回 true,否则返回 false,如果为 true,则断言的测试用例得到通过否则测试用例失败。

语法

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

参数:此函数接受四个参数,如上述语法所示。参数说明如下:

  1. $subset :此参数表示要包含在数组中的子集。
  2. $array :这个参数是一个数组,断言函数将检查它是否包含子集。
  3. $strict :这个参数是一个标志,用于比较数组中对象的身份。
  4. $message :此参数采用字符串值。当测试用例失败时,此字符串消息显示为错误消息。

下面的程序说明了 assertArraySubset()函数:

程序一



"value b", "b" =>" value b");
        $subset = array("a"=> "value a"); 
        // assert function to test whether 'subset' is a subset of array
        $this->assertArraySubset($subset, $testArray, false, "testArray doesn't contains subset as subset") ;
    }
}
  
?>

输出:

PHPUnit 6.5.5 by Sebastian Bergmann and contributors.

F                                                                   1 / 1 (100%)

Time: 29 ms, Memory: 4.00MB

There was 1 failure:

1) GeeksPhpunitTestCase::testNegativeTestcaseForArraySubset
testArray doesn't contains subset as subset
Failed asserting that an array has the subset Array &0 (
    'a' => 'value a'
).
--- Expected
+++ Actual
@@ @@
 Array
 (
-    [a] => value a
+    [a] => value b

/home/shivam/Documents/geeks/phpunit/abc.php:11

FAILURES!
Tests: 1, Assertions: 1, Failures: 1.

方案二

"value a", "b" =>" value b");
        $subset = array("a"=> "value a"); 
        // assert function to test whether 'subset' is a subset of array
        $this->assertArraySubset($subset, $testArray, false, "testArray doesn't contains subset as subset") ;
    }
}
?>

输出:

PHPUnit 6.5.5 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 21 ms, Memory: 4.00MB

OK (1 test, 1 assertion)

注意:要使用 phpunit 运行测试用例,请按照此处的步骤操作。