简介
npm 包 test-library-ng2 是一个 Angular 2+ 的单元测试框架,能够方便地进行单元测试和集成测试,并提供了丰富的 API 和工具函数,可以帮助开发者快速测试组件、指令、管道等。
安装
我们可以使用 npm 命令行工具安装 test-library-ng2 包:
npm install --save-dev @testing-library/angular
--save-dev
参数表示该包只需要在开发环境中使用。
快速上手
测试框架的使用分为三步:
- 创建被测试组件或指令;
- 创建测试用例;
- 运行测试并查看结果。
示例
1. 创建被测试组件
假设我们有一个组件 AppHelloComponent:
<h1>Hello {{name}}!</h1>
@Component({ selector: 'app-hello', template: `<h1>Hello {{name}}!</h1>`, }) export class AppHelloComponent { name = 'World'; }
2. 创建测试用例
我们可以使用 TestBed、ComponentFixture 和 debugElement 来创建测试用例:
-- -------------------- ---- ------- ----------------------------- -- -- - --- -------- ------------------------------------ --- ---------- ------------------ --- --- ------------- ------------------- -- - -------------------------------- ------------- -------------------- -- -------------------- -------- -- - ------- - ------------------------------------------- --------- - -------------------------- -- - --------------------- -------------- - ---------- ------------------------ --- ---- ---------- -------- -- -- - ------------------------------- --- ---------- ------- ---------- -- -- - ----------------------------------------------------- ----------- --- ---
beforeEach
:在每个测试用例之前执行一次,用来初始化测试环境;async
:用来异步执行代码;TestBed.configureTestingModule
:用来配置测试环境,通过declarations
配置需要测试的组件、指令、管道等;fixture.componentInstance
:获取被测试组件实例;fixture.detectChanges
:触发组件变更检测;de.nativeElement.textContent
:获取被测试组件的 HTML 元素。
3. 运行测试并查看结果
我们可以通过命令行工具来运行测试用例:
ng test
如果一切正常,测试结果如下:
Executed 2 of 2 SUCCESS (0.013 secs / 0.013 secs) TOTAL: 2 SUCCESS
高级用法
npm 包 test-library-ng2 提供了很多高级用法,例如对组件、指令、管道等的测试,特殊用例的测试,订阅流的测试等。
结语
npm 包 test-library-ng2 是一个方便、快捷的单元测试框架,为 Angular 2+ 开发者提供了不少便利。希望本文能够帮助大家更好地使用它。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055d5f81e8991b448db246