assertContains()
assertContains(mixed $needle, Iterator|array $haystack[, string $message = ''])
当 $needle
不是 $haystack
的元素时报告错误,错误讯息由 $message
指定。
assertNotContains()
是与之相反的断言,接受相同的参数。
assertAttributeContains()
和 assertAttributeNotContains()
是便捷包装(convenience wrapper),以某个类或对象的 public
、protected
或 private
属性为搜索范围。
- <?php
- class ContainsTest extends PHPUnit_Framework_TestCase
- {
- public function testFailure()
- {
- $this->assertContains(4, array(1, 2, 3));
- }
- }
- ?>
phpunit ContainsTest
- PHPUnit 4.8.0 by Sebastian Bergmann and contributors.
- F
- Time: 0 seconds, Memory: 5.00Mb
- There was 1 failure:
- 1) ContainsTest::testFailure
- Failed asserting that an array contains 4.
- /home/sb/ContainsTest.php:6
- FAILURES!
- Tests: 1, Assertions: 1, Failures: 1.
assertContains(string $needle, string $haystack[, string $message = '', boolean $ignoreCase = FALSE])
当 $needle
不是 $haystack
的子字符串时报告错误,错误讯息由 $message
指定。
如果 $ignoreCase
为 TRUE
,测试将按大小写不敏感的方式进行。
- <?php
- class ContainsTest extends PHPUnit_Framework_TestCase
- {
- public function testFailure()
- {
- $this->assertContains('baz', 'foobar');
- }
- }
- ?>
phpunit ContainsTest
- PHPUnit 4.8.0 by Sebastian Bergmann and contributors.
- F
- Time: 0 seconds, Memory: 5.00Mb
- There was 1 failure:
- 1) ContainsTest::testFailure
- Failed asserting that 'foobar' contains "baz".
- /home/sb/ContainsTest.php:6
- FAILURES!
- Tests: 1, Assertions: 1, Failures: 1.
例 A.7: 带有 $ignoreCase 参数的 assertContains() 的用法
- <?php
- class ContainsTest extends PHPUnit_Framework_TestCase
- {
- public function testFailure()
- {
- $this->assertContains('foo', 'FooBar');
- }
- public function testOK()
- {
- $this->assertContains('foo', 'FooBar', '', true);
- }
- }
- ?>
phpunit ContainsTest
- PHPUnit 4.8.0 by Sebastian Bergmann and contributors.
- F.
- Time: 0 seconds, Memory: 2.75Mb
- There was 1 failure:
- 1) ContainsTest::testFailure
- Failed asserting that 'FooBar' contains "foo".
- /home/sb/ContainsTest.php:6
- FAILURES!
- Tests: 2, Assertions: 2, Failures: 1.