我刚刚开始基于Jasmine对angular-seed应用程序进行练习测试。使用pivotal.github.io/jasmine/上找到的第一个测试示例时,它在我的应用上失败。
测试示例代码:
describe("A suite", function() {
it("contains spec with an expectation", function() {
expect(true).toBe(true);
});
});
我对内容和观看/部分进行了测试,他们通过了。但是茉莉花网站上的那个失败了。我错过了什么或者是否需要设置一些配置?
Karma.conf.js文件:
basePath = '../';
files = [
JASMINE,
JASMINE_ADAPTER,
'app/lib/angular/angular.js',
'app/lib/angular/angular-*.js',
'test/lib/angular/angular-mocks.js',
'app/js/**/*.js',
'test/unit/**/*.js'
];
autoWatch = true;
browsers = ['Chrome'];
junitReporter = {
outputFile: 'test_out/unit.xml',
suite: 'unit'
};
Karma-e2e.conf.js文件:
basePath = '../';
files = [
ANGULAR_SCENARIO,
ANGULAR_SCENARIO_ADAPTER,
'test/e2e/**/*.js'
];
autoWatch = false;
browsers = ['Chrome'];
singleRun = true;
proxies = {
'/': 'http://localhost:8000/'
};
junitReporter = {
outputFile: 'test_out/e2e.xml',
suite: 'e2e'
};
答案 0 :(得分:2)
根据文档的Runner and Reporter部分的http://pivotal.github.io/jasmine/#section-The_Runner_and_Reporter,有:
document.querySelector('.version').innerHTML = jasmineEnv.versionString();
浏览器控制台抛出错误
Uncaught TypeError: Cannot set property 'innerHTML' of null
在该教程中,SpecRunner.html
有一段没有document.querySelector('.version').innerHTML = jasmineEnv.versionString();
一切都按预期工作。
答案 1 :(得分:1)
您正在使用旧业力的配置风格。我看到两个选项
1)你有很老的业力版,
2)你正试图在旧的配置风格上运行新的业力。
您应该尝试将业力升级到最新版本并将配置迁移到新样式,请参阅:http://karma-runner.github.io/0.10/config/configuration-file.html
答案 2 :(得分:0)
您可以发表评论:
document.querySelector('.version').innerHTML = jasmineEnv.versionString();
或者你可以添加你的身体:
<div class='version'></div>