karma 实现简单的自动化单元测试

测试步骤:

  1. 首要前提安装 node.js 以管理员身份运行 Cmder (该软件是 windows 下写命令行的利器)
//进入桌面
cd Desktop
//创建项目文件夹
mkdir herotest
//进入项目目录中
cd herotest
//项目初始化 会在项目中自动新增一个 package.json 文件 
npm init
  1. 将项目文件夹拖拽至 sublime 编辑器中,在项目文件夹中创建文件 结构如下

src->index.js
test->indes.spec.js

karma 实现简单的自动化单元测试_第1张图片
image.png

  • 编辑 index.js 文件
window.add = function (num) {
    return num + 1;
}
  1. 开始装工具
//全局安装 karma
npm install -g karma
//初始化 karma 
karma init 
//下面是初始化对话框中的选项
jasmine
no
PhantomJS
no
//之后就会在项目中自动新增一个 karma.conf.js 配置文件
  1. 更改 karma.conf.js 文件,修改两处地方
files[
  './src/**/*.js',
  './test/**/*.spec.js'
]

singleRun: true,
  1. 编辑 index.js 文件 ,这里使用的是 ES5 的语法
window.add = function (num) {
    return num + 1;
}
  1. 编辑 indes.spec.js 参考:jasmine语法
describe("简单的测试加法", function() {
  it("简单的测试加法", function() {
    expect(window.add(1)).toBe(2);
  });
});
  1. 接着将所需要用到的断言库 jasmine 和无头浏览器 phantomjs 装过来
npm install jasmine --save
npm install karma-phantomjs-launcher --save
//第二次操作好像并不需要再装这个就可以直接执行  karma start
 npm install phantomjs --save ||   npm install PhantomJs --save
//执行单元测试
karma start

这样这个单元测试就成功了

karma 实现简单的自动化单元测试_第2张图片
image.png

你可能感兴趣的:(karma 实现简单的自动化单元测试)