一. 首先下載單元測試example
ionic-unit-testing-example的介紹參考上一篇文章。
二. 為已創(chuàng)建工程配置單元測試環(huán)境
- 安裝需要的Node Modules
為已創(chuàng)建工程配置單元測試環(huán)境
npm install --save-dev angular2-template-loader html-loader jasmine jasmine-spec-reporter karma karma-chrome-launcher karma-jasmine karma-jasmine-html-reporter karma-sourcemap-loader karma-webpack karma-coverage-istanbul-reporter istanbul-instrumenter-loader null-loader protractor ts-loader ts-node @types/jasmine @types/node
- 增加Scripts到package.json 文件
"test": "karma start ./test-config/karma.conf.js",
"test-ci": "karma start ./test-config/karma.conf.js --single-run",
"test-coverage": "karma start ./test-config/karma.conf.js --coverage",
"e2e": "npm run e2e-update && npm run e2e-test",
"e2e-test": "protractor ./test-config/protractor.conf.js",
"e2e-update": "webdriver-manager update --standalone false --gecko false"
以上配置后费奸,可以在命令行中運(yùn)行這些腳本于颖。如npm run test代表開始單元測試诗良。
- 增加配置文件
將ionic-unit-testing-example 工程下面的test-config拷貝到自己的工程下面台猴∩喙罚總共有以下幾個(gè)文件:
karma-test-shim.js
karma-config.js
mocks-ionic.js
protractor.conf.js
webpack.test.js
karma-config.js是Karma配置文件叽奥。
這個(gè)配置文件使用karma-test-shim.js將測試需要的Modules連接起來。
webpack.test.js用于配置和編譯我們的測試代碼痛侍。
protractor.conf.js Protractor的配置文件.
mocks-ionic.js這個(gè)文件在ionic-angular module測試中朝氓,作為一個(gè)替代類的類的集合。
5.增加第一個(gè)單元測試
將ionic-unit-testing-example中的app.component.spec.ts中的拷貝的我們工程主届,并放在對應(yīng)的文件夾下赵哲。這個(gè)測試文件用于測試MyApp這個(gè)類。
- 進(jìn)行單元測試
npm run test
參考:
https://leifwells.github.io/2017/08/27/testing-in-ionic-configure-existing-projects-for-testing/