php - seeInField 找到元素,而 fillField 没有 - CodeCeption

标签 php unit-testing acceptance-testing codeception

我是 CodeCeption 的新手。我在正文中有以下 html,

<div><input type="text" name="content_id" id="contentId" maxlength="10" value="123"></div>

在 CodeCeption 验收测试中,我有以下代码

`<?php 
$I = new AcceptanceTester($scenario);
$I->wantTo('fillfield test');
$I->amOnPage('/');
$I->seeInField('#contentId', 123);
$I->fillField('#contentId', 222397);
?>`

seeInField 测试成功通过,但 fillField 抛出错误

抱歉,我无法填写字段“#contentId”,222397
InvalidArgumentException: 当前节点列表为空

这阻止了我继续前进。帮我解决这个问题。

最佳答案

终于得到了我自己问题的答案。我使用 PhpBrowser 模块进行测试,它不允许用户填写不在表单内的字段。他们在文档中提到的其他内容是,

PhpBrowser 的常见缺点:

  1. 您只能点击具有有效 URL 的链接或表单提交 按钮
  2. 您不能填写不在表单内的字段
  3. 您不能使用 JavaScript 交互:模态窗口、日期选择器等,

关于php - seeInField 找到元素,而 fillField 没有 - CodeCeption,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24349463/

相关文章:

php - 数据未从 Python 传递到 PHP

PHP和MySQL如何查询小数列

angular - 类型错误 : Cannot read property 'get' of undefined (Fixed conflicting imports not working)

python - 如何模拟 @patch 装饰器创建的对象上的方法?

tdd - 如何构建验收测试和测试计划?

unit-testing - 使用 Coffeescript 测试 Node.js

php - 正则表达式忽略第二个前瞻

php - 仅用php可以调用定期AJAX调用吗

python - 为具有全局变量的方法创建单元测试

ruby-on-rails - RoR 野外的 RSpec 和 Cucumber