【发布时间】:2013-06-07 05:08:39
【问题描述】:
我在 app/scripts 下定义了一个相当简约的应用程序(一个控制器,三个指令)。
当 karma 使用 karma start 运行时,我导航到 localhost:9100,单元测试就会运行。但是,当我使用 karma start karma-2e2.conf.js 运行时,运行错误:
[31mChrome 27.0 (Mac) I haz all the things I haz grid FAILED[39m
TypeError: Cannot read property 'name' of undefined
Chrome 27.0 (Mac): Executed 1 of 1[31m (1 FAILED)[39m
我的测试在 test/e2e/spec/*.js 下进行
我的 karma-e2e.conf.js 内容如下:
basePath = '';
files = [
ANGULAR_SCENARIO,
ANGULAR_SCENARIO_ADAPTER,
'app/components/jquery/jquery.js',
'app/components/angular/angular.js',
'test/e2e/**/*.js'
];
proxies = {
'/' : 'http://localhost:9000'
}
exclude = [];
reporters = ['progress'];
port = 8080;
runnerPort = 9100;
colors = true;
logLevel = LOG_INFO;
autoWatch = false;
browsers = ['Chrome'];
captureTimeout = 5000;
singleRun = false;
我的测试是:
describe('I haz all the things', function(){
beforeEach(function(){
browser().navigateTo('/');
});
it('I haz grid', function(){
expect(angular.element('div.grid-item').count).toEqual(1);
});
});
为什么会失败,我该如何解决?
【问题讨论】:
-
您确定您已经发布了我们找到问题原因所需的所有代码吗?该错误涉及未定义对象的“名称”属性-但我看不到您在“它”块中引用任何此类对象...
-
那是因为我不使用任何对象的名称属性。有点奇怪:/
-
有什么你想看的代码吗?
-
必须有一行错误指向 - 我不确定这一点,但与错误一起,它还必须包含遇到错误的行...有什么作为这样的?
-
不,即使我将日志级别切换到调试也没有
标签: angularjs gruntjs yeoman bower karma-runner