phpUnit -assertQuery 失败并显示

标签 php zend-framework testing phpunit assert

我在使用assertQuery()时遇到了问题。在我的html中(通过输出正文进行验证)

<input type="text" name="LASTNAME" id="LASTNAME" value="" maxlength="25" size="20" />

所以我为它编写了一个查询来测试以确保该元素存在并且该值为空

    $this->assertQuery('input#LASTNAME[value=""]', 1);

PhpUnit 说断言失败

Failed asserting node DENOTED BY input#LASTNAME[value=""] EXISTS

你能给我一些关于这个断言失败的原因以及如何正确编写它的见解吗?

提前致谢!

最佳答案

Zend Framework 将 CSS 选择器转换为 XPath 查询的代码已损坏。它不会在属性名称之前添加所需的 @。使用这个,尽管 CSS 不正确,断言:

$this->assertQuery('input#LASTNAME[@value=""]', 1);

参见this forum thread了解详情。

更新:issue was reportedfixed in release 1.10 ,因此您可以升级 Zend Framework 作为使用无效 CSS 选择器的替代方法。

关于phpUnit -assertQuery 失败并显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5149255/

相关文章:

php - Nginx - Laravel - LEMP - 访问除/以外的任何页面时出现 403 Forbidden 错误

php - DISTINCT * 不撤回口是心非 (MYSQL)

php - 使用 PHP 搜索重复记录 : on Database using SQL, 或 file.txt?

algorithm - 如何测试 BST 在从排序数组构造后是否平衡

c# - 如何测试 API

php - 使用 jQuery 时出现 "Form is not defined"错误

php - Zend Framework 1.9 从数据库查询中填充复选框

php - 带有条件小节的多页 AJAX 表单

php - 调试休眠的 MySQL 连接

asp.net - 再现错误消息-浏览器/机器速度慢