Codeceptjs选择器:如何选择“电子邮件”输入字段?

时间:2017-06-26 15:14:18

标签: syntax codeceptjs

我真的需要语法方面的帮助。

我有输入字段:

<input class="email__field ng-pristine ng-empty ng-valid-email ng-invalid ng-invalid-required ng-touched" name="email" ng-model="authForm.email" ng-keypress="keypress($event);" ng-disabled="false" focused="true" required="" style="" type="email">

根据文件:http://devdocs.io/codeceptjs/helpers/seleniumwebdriver/index#fillfield

I.fillField('email', 'hello@world.com');

应按名称定位元素。 但测试失败并显示错误消息: “字段电子邮件找不到名称|文本| CSS | XPath”

语法错误或者webdriver可能有问题吗? 例如。 上一个命令/步骤是:

I.amOnPage(some url here); 

它正在运行,所以我认为webdriver应该没问题。

1 个答案:

答案 0 :(得分:1)

您使用的语法是正确的。找到元素可能会有一些问题。

尝试通过以下方式调试问题,

1)添加等待 - &gt; I.等待(#); #am; I.amOnPage&#34;和&#34; I.fillField&#34;
2)尝试点击元素&#39;电子邮件&#39;然后填写字段I.click(&#39; //输入[@name =&#39; email&#39;]&#39;); I.fillField(&#39; email&#39;);
3)尝试为fillField传递一个xpath,可能还有另一个被禁用的元素。例如:I.fillField(&#39; //输入[@ ng-model =&#34; authForm.email&#34;] [@ name =&#39; email&#39;]&#39;)

另外请确保元素不在iframe内,如果它意味着您需要先切换到框架然后再执行操作