codeception - 如何使用 Codeception 在验收测试中断言 jQuery 设置的值?
问题描述
我正在用 WordPress 编写一个用于管理狗收养的应用程序。在一种情况下,用户从一个选择中选择一个主要品种,从另一个选择中选择一个次要品种。当他们选择品种时,输入(只读)字段将填充 2 个选择的值。
我想对此进行测试,并且我已经编写了一个验收测试来做到这一点。从 select 中选择狗品种,并通过 jQuery 将值添加到输入中:
麻烦的是,当我尝试断言文本存在时,我不断收到错误并且测试失败。以下几行是我尝试过的:
$I->see('Kelpie X');
$I->seeElement( '#acf-field_mdr_dog_text_breed_name', ['value' => 'Kelpie X']);
$I->seeInField( 'input#acf-field_mdr_dog_text_breed_name', 'Kelpie X');
为什么这些条件没有通过?是否必须这样做,因为 jQuery 设置了值?
谢谢!
解决方案
我不确定为什么第一个不起作用,但我注意到输入文本字段中的值在 X 之后有一个空格。显然seeInField
&seeElement
非常严格,所以这样做了:
// Note the space after the X
$I->seeElement( 'input#acf-field_mdr_dog_text_breed_name', ['value' => 'Kelpie X ']);
$I->seeInField( 'input#acf-field_mdr_dog_text_breed_name', 'Kelpie X ');
推荐阅读
- javascript - jquery - 通过 Switch 语句搜索和替换
- security - Docker 插件 - 在独立的 docker 设置中传递和存储密码
- c++ - 重载 == 运算符
- sql-server - 聚集索引和非聚集索引上的 WHERE 子句
- node.js - NodeJS + Mongoose:MissingSchemaError:模式尚未注册模型“类别”
- javascript - 如何完全删除父元素
- swift - 根据 UIIMageView 等于 nil 导入图像
- r - R如何根据频率组合数据帧因子
- vba - 从共享点上的 excel 文件中读取和复制信息
- jquery - 如何调用委托点击功能?