Protractor Angular 2 失败:未知错误:未定义角度

Posted

技术标签:

【中文标题】Protractor Angular 2 失败:未知错误:未定义角度【英文标题】:Protractor Angular 2 Failed: unknown error: angular is not defined 【发布时间】:2016-07-12 03:10:32 【问题描述】:

我收到以下错误:

失败:未知错误:未定义角度

这仅在使用诸如“by.model”之类的特定角度选择器时发生。但是诸如“by.css”之类的选择器可以正常工作。这是一个 Angular 2 应用程序...

测试

it('should set focus', () => 
    //This works
    //var input = element(by.css('myclass'));
    //This fails
    var input = element(by.model('config.value'));
    input.clear();
    input.sendKeys('test');
    input.sendKeys(Key.TAB);
    input.click();
    var highlightedText = browser.executeScript(function getSelectionText()       
             
         return window.getSelection().toString(); 
    );
    expect(highlightedText).toEqual('test');
 );


exports.config = 
  baseUrl: 'http://localhost:5555',

  specs: [
    'dist/dev/**/*.e2e.js'
  ],
  exclude: [],

  framework: 'jasmine2',

  allScriptsTimeout: 110000,

  jasmineNodeOpts: 
    showTiming: true,
    showColors: true,
    isVerbose: false,
    includeStackTrace: false,
    defaultTimeoutInterval: 400000
  ,
  directConnect: true,

  capabilities: 
    'browserName': 'chrome'
  ,

  onPrepare: function() 
    var SpecReporter = require('jasmine-spec-reporter');
    jasmine.getEnv().addReporter(new SpecReporter(displayStacktrace: true));

    browser.ignoreSynchronization = false;
  ,

  useAllAngular2AppRoots: true
;

铬=49.0.2623.87 铬驱动程序=2.9.248315 平台=Windows NT 6.1 SP1 x86_64 节点=5.9.1

【问题讨论】:

你能添加你的 protractor.conf 吗? 我用配置更新了帖子 如果在browser.get() 之后添加browser.waitForAngular()beforeEach 会怎样? browser.waitForAngular();没有解决问题。 【参考方案1】:

我在开发者文档下的 angular.io 网站上找到了答案。

Upgrading from 1.x

目前不支持角度选择器 by.model 和 by.binding。目前尚不清楚这些是可能的功能还是它们正在为 angular 2 工作。

【讨论】:

...我生命中的几个小时被浪费了,因为有人懒得在文档中不这样做...angular.io/docs/ts/latest/guide/testing.html

以上是关于Protractor Angular 2 失败:未知错误:未定义角度的主要内容,如果未能解决你的问题,请参考以下文章

当 Angular 不可用时,如何等到 Protractor 可见元素?

angular 调试 js (分 karms protractor / test e2e unit )

Jasmine在等待Protractor与页面同步时出错:“hooks is undefined”

Angular JIT 编译失败:'@angular/compiler' 未加载

使用带有 Angular2 和 Socket.io 的量角器运行 e2e 测试

空白屏幕 - Angular JIT 编译失败:'@angular/compiler' 未加载