SAP Spartacus只执行指定单元测试的小技巧

时间:2022-07-26
本文章向大家介绍SAP Spartacus只执行指定单元测试的小技巧,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

以ng test storefrontlib为例,如果发现自己开发的单元测试出了问题需要调试,可以让Angular只运行自己出问题的那个单元测试:

修改storefrontlib项目文件夹src下面的test.ts, 改成如下内容:

// This file is required by karma.conf.js and loads recursively all the .spec and framework files

import 'zone.js/dist/zone';
import 'zone.js/dist/zone-testing';
import { getTestBed } from '@angular/core/testing';
import {
  BrowserDynamicTestingModule,
  platformBrowserDynamicTesting,
} from '@angular/platform-browser-dynamic/testing';
import '@angular/localize/init';

declare const require: any;

// First, initialize the Angular testing environment.
getTestBed().initTestEnvironment(
  BrowserDynamicTestingModule,
  platformBrowserDynamicTesting()
);
// Then we find all the tests.
const context = require.context('./', true, /.spec.ts$/);
// And load the modules.

const FILE = ['./cms-components/checkout/components/delivery-mode/delivery-mode.component.spec.ts'];

context.keys().filter( name => !!FILE.includes(name)).map(context);

这样就达到了我们想要的效果: