前言回顾
core
文件中还有一个重要模块:testing
,这个模块下封装了很多测试需要的常用方法,测试
在 NG-ZORRO 项目中是非常重要的一部分,完善的测试代码可以最大程度地保证组件的可用性和代码质量。
测试
Angular 测试
背景知识
我们都知道,在我们创建 Angular 项目时,Angular 会自动帮我们在 package.json
里安装 Jasmine 测试框架 和 karma 测试运行器:
"devDependencies": {
"jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~4.2.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage-istanbul-reporter": "~2.1.0",
"karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.4.2",
"karma-spec-reporter": "0.0.32",
"karma-viewport": "^1.0.4",
}
参考定义如下:
Jasmine:Jasmine是JavaScript的行为驱动开发测试框架。它不依赖浏览器,DOM或任何JavaScript框架。因此,它适用于网站,Node.js项目或JavaScript可以运行的任何地方。 Karma:Karma 是一个基于 Node.js 的 JavaScript 测试执行过程管理工具(Test Runner)。该工具可用于测试所有主流 Web 浏览器,也可以集成到 CI(Continuous integration)工具,还可以和其他代码编辑器一起使用。
基本结构
我们创建一个带有测试的演示组件 TestComponent
,然后打开 test.component.spec.ts
: