2013-08-22 67 views
13

我正在测试一个主要写在angularjs中的应用程序,但是应用程序的某些元素是用.NET C#编写的,例如登录表单。量角器可以测试不是角度的登录

我的问题是这样的。

我可以利用量角器和e2e测试完全测试我的应用程序吗?

我已经尝试使用量角器,到目前为止我很满意。不过,我似乎无法测试用.NET编写的页面。我不确定这是否是因为量角器只测试角度应用程序的元素,或者如果它是我编写测试的方式。

我已经尝试搜索页面中的元素,如下面的示例。

ptor.findElement(protractor.By.xpath('/html/body/div/div[1]/section/input')).sendKeys('xxx'); 

但是,这只会返回UnknownError:javascript错误:无法调用未定义的方法'get'。

我知道这个错误意味着元素不是,但是我已经把我的测试超时下面

it('this is a test', function() {}, 10000);

所有我reuire是能够将文本添加到一个显示在页面上可见动态创建输入框,由Html.TextBoxFor()创建

回答

15

将问题放到github上后,我收到了我正在寻找的答案。这可以找到HERE!

量角器要求Angular出现在页面上,绕过这个方法是直接使用驱动程序。遵循上面的链接应该阻止任何人在正确的方向上陷入同一问题。

对JulieMR和其他帮助解决此问题的人的荣誉。

+6

只需在beforeEach上设置'browser.ignoreSynchronization = true'即可测试非量角器网站,例如http://ng-learn.org/2014/02/Protractor_Testing_With_Angular_And_Non_Angular_Sites/ –

+0

^应该是所选答案的答案for“Further reading” –

+0

他在github上获得帮助的地方:https://github.com/angular/protractor/issues/334 –