搭建Ionic2的单元测试环境(基于angular2的环境下延伸)

本文介绍如何为Ionic 3项目设置单元测试环境,包括安装Jasmine、Karma等依赖,配置karma.conf.js和angular-cli.json文件,以及具体文件编写路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这里搭建的环境是Jasmine作为单元测试框架,Karma框架作为自动化测试的框架。

1.首先需要下载相关的依赖,

"jasmine""^2.8.0",

"jasmine-core""^2.8.0",

"jasmine-spec-reporter""^4.2.1",

"karma""^1.7.1",

"karma-chrome-launcher""^2.2.0",

"karma-cli""^1.0.1",

"karma-coverage-istanbul-reporter ""^1.3.0",

"karma-jasmine""^1.1.0",

"karma-jasmine-html-reporter""^0.2.2",

"karma-mocha-reporter""^2.2.4",

"karma-remap-istanbul""^0.6.0",

"typescript""2.3.4"

2.配置相关的文件

1.新建typings.json文件,写入如下内容

{

    "globalDependencies": {

        "jasmine""registry:dt/jasmine#2.5.2+20170317130948",

    }

}

 

2.新建karma.conf.js文件,并写入如下内容

module.exports = function (config) {

    config.set({

        basePath: '',

        frameworks: ['jasmine''@angular/cli'],

        plugins: [

            require('karma-jasmine'),

            require('karma-chrome-launcher'),

            require('karma-remap-istanbul'),

            require('karma-mocha-reporter'),

            require('@angular/cli/plugins/karma')

        ],

    files: [

        { pattern: './src/libriary/testing/preprocessors.ts'watched: false }

    ],

    preprocessors: {

        './src/libriary/testing/preprocessors.ts': ['@angular/cli']

    },

    mime: {

        'text/x-typescript': ['ts','tsx']

    },

    remapIstanbulReporter: {

        reports: {

            html: 'coverage',

            lcovonly: './coverage/coverage.lcov'

        }

    },

    angularCli: {

        config: './angular-cli.json',

        environment: 'dev'

    },

    reporters: config.angularCli && config.angularCli.codeCoverage

        ? ['mocha''karma-remap-istanbul']

        : ['mocha'],

    port: 9876,

    colors: true,

    logLevel: config.LOG_INFO,

    autoWatch: true,

    browsers: ['Chrome'],

    singleRun: false

    });

};

3.新建angular-cli.json,并写入如下内容

{

    "project": {

        "version""1.0.0",

        "name""app name"

    },

    "apps": [

        {

            "root""src",

            "outDir""dist",

            "assets": [

                "assets"

            ],

        "index""index.html",

        "main""./app/main.ts",

        "polyfills""../src/libriary/testing/polyfills.ts",

        "test""../src/libriary/testing/preprocessors.ts",

        "tsconfig""../src/libriary/testing/tsconfig.spec.json",

        "prefix""app",

        "mobile"false,

        "styles": [

            "styles.css"

        ],

        "scripts": ["../src/assets/lib/leaflet.js"],

        "environmentSource""../src/libriary/testing/environments/environment.ts",

        "environments": {

        "dev""../src/libriary/testing/environments/environment.ts",

        "prod""../src/libriary/testing/environments/environment.prod.ts"

    }

}

],

"addons": [],

"packages": [],

"test": {

"karma": {

"config""./karma.conf.js"

}

},

"defaults": {

"styleExt""css",

"prefixInterfaces"false,

"inline": {

"style"false,

"template"false

},

"spec": {

"class"false,

"component"true,

"directive"true,

"module"false,

"pipe"true,

"service"true

}

}

}

接下来是编写相关的文件,具体地址是

转载自 http://skyfly.xyz/2017/10/11/Front_End/ionic/how-to-settingup-unittest-for-ionic3x/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值