Codeception PhpBrowser grabAttributeFrom抛出异常DOMDocument :: loadXML()

时间:2016-02-02 13:32:41

标签: codeception

我将我的测试从Codeception 2.0.9更新到2.1.5。

PhpBrowser::grabAttributeFrom()方法外,一切正常。我会得到像这样的PHPUnit异常:

[PHPUnit_Framework_Exception] DOMDocument::loadXML(): Entity 'nbsp' not defined in Entity, line: 3

[PHPUnit_Framework_Exception] DOMDocument::loadXML(): Opening and ending tag mismatch: img line 141 and a in Entity, line: 142

似乎grabAttributeFrom对HTML-DOM解析非常严格。我用Google搜索了消息,发现DOMDocument::loadHtml()有点不那么严格了。

http://php.net/manual/en/domdocument.loadhtml.php

如何修复此grabAttributeFrom?我需要HTML文件的href/src属性的内容。

1 个答案:

答案 0 :(得分:1)

@Naktibalda的暗示引导我自己解决问题。这是REST和PhpBrowser模块的冲突。两个模块都实现了函数grabAttributeFrom。要获得正确的,你必须更改配置中的顺序,以获得PhpBrowser:

modules:
  enabled:
    - REST:
        depends: PhpBrowser
        url: 'http://www.domain.com'
    - PhpBrowser:
        url: 'http://www.domain.com'

这对我有用,因为PhpBrowser现在推翻了构建的AcceptanceTester.php中的方法。