PHPunit | assertCount() Function

30 Jul, 2019
The assertCount() function is a builtin function in PHPUnit and is used to assert an array to contain same number of elements as the given count value. This assertion will return true in the case if the array contains only an exact number of elements as given count else return false. In case of true the asserted test case got passed else test case got failed.
Syntax:
assertCount( integer $expectedCount, array $array, string $message = '' )

Parameters: This function accepts three parameters as shown in the above syntax. The parameters are described below:
$expectedCount: This parameter is an integer which is expected number of elements for array.
$array: This parameter is array for which the assert function will check whether it contains same number of elements as the given count value or not.
$message: This parameter takes string value. When the testcase got failed this string message got displayed as error message.
Below programs illustrate the assertCount() function in PHPUnit:
Program 1:
<?phpuse PHPUnit\Framework\TestCase;  class GeeksPhpunitTestCase extends TestCase{    public function testNegativeTestcaseForAssertCount()    {        $testArray = array(1, 2, 3, 4);          // Assert function to test whether testArray contains        // same number of elements as expectedCount        $expectedCount = 3;          $this->assertCount(            $expectedCount,            $testArray, "testArray doesn't contains 3 elements"        );    }}  ?>
Output:
PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

F                                                                   1 / 1 (100%)

Time: 66 ms, Memory: 10.00 MB

There was 1 failure:

1) GeeksPhpunitTestCase::testNegativeTestcaseForAssertCount
testArray doesn't contains 3 elements
Failed asserting that actual size 4 matches expected size 3.

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

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

Program 2:
<?phpuse PHPUnit\Framework\TestCase;  class GeeksPhpunitTestCase extends TestCase{    public function testPositiveTestcaseForAssertCount()    {        $testArray = array(1, 2, 3, 4);          // Assert function to test whether testArray contains        // same number of elements as expectedCount        $expectedCount = 4;          $this->assertCount(            $expectedCount,            $testArray, "testArray contains 3 elements"        );    }}  ?>
Output:
PHPUnit 8.2.5 by Sebastian Bergmann and contributors.

.                                                                   1 / 1 (100%)

Time: 67 ms, Memory: 10.00 MB

OK (1 test, 1 assertion)

Note: To run testcases with phpunit follow steps from here. Also, assertCount() is supported by phpunit 7 and above.
PHP-PHPUnit
PHP
Web Technologies
PHP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to Insert Form Data into Database using PHP ?
How to convert array to string in PHP ?
How to Upload Image into Database and Display it using PHP ?
How to check whether an array is empty using PHP?
PHP | Converting string to Date and DateTime
Installation of Node.js on Linux
Top 10 Projects For Beginners To Practice HTML and CSS Skills
Difference between var, let and const keywords in JavaScript
How to insert spaces/tabs in text using HTML/CSS?
How to fetch data from an API in ReactJS ?