如何在没有角度的其他网站上使用量角器进行E2E测试?

时间:2019-05-02 16:32:56

标签: angular protractor

我正在构建测试用例,其中一个是在其他网站上与量角器一起测试,我只会收到错误消息

Angular CLI:7.3.8 节点:11.13.0 操作系统:win32 x64 角度:7.2.14

beforeEach(function() {
  browser.get('http://xxx.xx/');
});

it('should have a title', function() {
  expect(browser.getTitle()).toEqual('XXX');
});

我希望量角器重新命名网站标题,并收到消息“失败:javascript错误:未定义角度”

1 个答案:

答案 0 :(得分:0)

Protractor和WebdriverJS之间的区别在于,在执行每个命令之前,Protractor等待Angular特定的$ http和$ timeout任务完成。

但是,如果您在非角度应用程序中使用量角器,您会注意到它根本不做任何事情。据我了解,量角器一直在寻找这些任务而没有运气

可以使用browser.waitForAngularEnabled(false)手动禁用此功能。

禁用后,您可以与非角度页面进行交互。但是,请确保添加等待页面加载的功能。

因此您将拥有类似的东西

it('should have a title', function() {
  browser.get(angularPage);

  // disable waiting for angular
  browser.waitForAngularEnabled(false);

  // open non angular page
  $redirectingLink.click();

  // do whatever you want here
  expect(browser.getTitle()).toEqual('XXX');

  // enable the feature back on
  browser.waitForAngularEnabled(true);
});