如何使用Symfony DOMCrawler断言元素存在指定类brick--id--1?
断言Crawler实例元素包含指定类名的方案
既然你用的是Symfony的Crawler类,完全不需要处理HTML字符串或者用正则,这个类本身就提供了专门的方法来检查元素的CSS类:
- 直接调用Crawler实例的
hasClass()方法,传入你要验证的类名即可:// 在PHPUnit测试中的断言写法 $this->assertTrue($foo->hasClass('brick--id--1'));
hasClass()方法会自动处理类属性中的空格分隔逻辑,准确判断目标类名是否存在,不会出现部分匹配的问题(比如不会把brick--id--12误判为匹配brick--id--1)。
如果你的$foo实例包含多个DOM元素,还可以先过滤出目标元素再做断言,比如:
$this->assertNotEmpty($foo->filter('.brick--id--1'));
内容的提问来源于stack exchange,提问作者chx
相关产品推荐
相关产品推荐

