首先,让我说测试正在通过我只在子文件夹中执行它们,使用 test.ts :
.then(() => require.context('./app/folder/where/tests/fail/later', true, /\.spec\.ts/))
我正在使用angular-cli通过' ng test( - code-coverage,有时候......)启动测试
@angular/cli: 1.0.0-rc.1
node: 6.9.4
os: darwin x64
@angular/common: 2.4.9
@angular/compiler: 2.4.9
@angular/core: 2.4.9
@angular/forms: 2.4.9
@angular/http: 2.4.9
@angular/platform-browser: 2.4.9
@angular/platform-browser-dynamic: 2.4.9
@angular/router: 3.4.9
@angular/cli: 1.0.0-rc.1
@angular/compiler-cli: 2.4.9
事情是: 当我一起运行所有测试时,对以下文件的测试失败。
error.helper.ts
export function formatErrorStatusCode(code: number): any{
if ([0, 401, 403, 404, 408, 409, 502, 503].indexOf(code) != -1) {
return code;
} else {
switch (code.toString()[0]) {
case ('3') :
return '3XX';
case ('4') :
return '4XX';
case ('5') :
return '5XX';
default :
return 'BAD';
}
}
}
error.helper.spec.ts< = just un extract,其他测试类似,如失败的消息。
import {formatErrorStatusCode} from "../../shared/helpers/error.helper";
describe('CategoryComponent', () => {
it('should return the code BAD if it is a unknown error', () => {
expect(formatErrorStatusCode(800)).toBe('BAD');
});
});
我在控制台中有以下结果:
Firefox 52.0.0 (Mac OS X 10.11.0) ErrorHelper should return the code BAD if it is a unknown error FAILED
Expected undefined to be 'BAD'.
@webpack:///src/app/shared/helpers/error.helper.spec.ts:33:4 <- src/test.ts:40231:9 [ProxyZone]
ProxyZoneSpec.prototype.onInvoke@webpack:///~/zone.js/dist/proxy.js:79:0 <- src/test.ts:114510:20 [ProxyZone]
Zone.prototype.run@webpack:///~/zone.js/dist/zone.js:113:0 <- src/test.ts:112174:24 [<root> => ProxyZone]
wrapTestInZone/<@webpack:///~/zone.js/dist/jasmine-patch.js:102:0 <- src/test.ts:114225:20 [<root>]
ZoneQueueRunner.prototype.execute@webpack:///~/zone.js/dist/jasmine-patch.js:132:0 <- src/test.ts:114255:17 [<root>]
Zone.prototype.runTask@webpack:///~/zone.js/dist/zone.js:151:0 <- src/test.ts:112212:28 [<root> => <root>]
drainMicroTaskQueue@webpack:///~/zone.js/dist/zone.js:418:0 <- src/test.ts:112479:25 [<root>]
从不调用函数formatErrorStatusCode(X)。
我不知道它来自哪里:angular2?角CLI?茉莉?因果报应?所有的混合?是因为我有太多的测试运行(287)?或其他什么......
如果有些人有滑雪道,我会很感激。
THX