當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


PHP PHPUnit assertArraySubset()用法及代碼示例

assertArraySubset()函數是PHPUnit中的內置函數,用於聲明具有子集的數組,如果該數組包含提供的子集,則該聲明返回true;否則返回false;如果為true,則聲明的測試用例通過否則測試用例失敗。

用法

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

參數:該函數接受四個參數,如以上語法所示。參數說明如下:


  1. $subset:此參數表示要包含在數組中的子集。
  2. $array:此參數是一個數組,assert函數將為其檢查其是否包含子集。
  3. $strict:此參數是一個標誌,用於比較數組中對象的身份。
  4. $message:此參數采用字符串值。當測試用例失敗時,此字符串消息將顯示為錯誤消息。

以下示例程序旨在說明assertArraySubset()函數:

程序1:

<?php 
use PHPUnit\Framework\TestCase; 
  
class GeeksPhpunitTestCase extends TestCase 
{ 
    public function testNegativeTestcaseForArraySubset() 
    { 
        $testArray = array("a"=>"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.

程序2:

<?php 
use PHPUnit\Framework\TestCase; 
  
class GeeksPhpunitTestCase extends TestCase 
{ 
    public function testPositiveTestcaseForArraySubset() 
    { 
        $testArray = array("a"=>"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運行測試用例,請遵循此處的步驟。



相關用法


注:本文由純淨天空篩選整理自Shivam.Pradhan大神的英文原創作品 PHPUnit | assertArraySubset() function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。