【问题标题】:Angularjs e2e test - How to use input(name).enter(value)?Angularjs e2e 测试 - 如何使用 input(name).enter(value)?
【发布时间】:2013-06-11 04:42:38
【问题描述】:

我在为e2e 测试Angularjs 编写场景方面非常陌生。我想写一个场景来测试登录。我有一个包含如下电子邮件字段的表单:

<input type="email" placeholder="Enter your e-mail" name="email" ng-model="form.email" value="" required autofocus > 

在我的场景中,我有以下行试图将一些电子邮件地址传递给该输入字段:

input('form.email').enter('blabla@blabla.com'); 

但不幸的是,我在运行测试后收到以下错误:

6ms input 'form.email' enter 'blabla@blabla.com'
选择器 [ng\:model="form.email"] 没有匹配任何元素。


有什么建议吗?

【问题讨论】:

  • 我在这个例子中没有看到任何问题:plnkr.co/edit/yyF0YWIQ1zq0gMMwMv4X 你能给出一个失败的例子吗?
  • 感谢您的回复。检查您的示例后,我发现我的问题与输入(名称)无关,似乎我无法在 browser().navigateTo('../../partials/login.html') 中给出正确的地址。我只是想知道如果它无法导航到该页面,为什么它会以绿色显示'浏览器导航到'../../views/login.html'!!!
  • 我已经尝试过了,但我无法捕获错误:请参阅stackoverflow.com/a/6867890,它说这似乎不可能。

标签: testing angularjs jasmine


【解决方案1】:

检查以确保您拥有:

browser().navigateTo('/');

如果不导航第一个角度,则不会对 DOM 有任何引用。

你也可以使用:

pause();

在运行 e2e 测试时准确查看浏览器在给定时间显示的内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-17
    • 1970-01-01
    相关资源
    最近更新 更多