(NodeJS+unit.js+MochaJS+istanbul)简单操作实例
2017-04-22 00:00
731 查看
在这前,需要安装并配置Node.js、npm服务!安装与配置,可以参考文档:http://blog.csdn.net/henni_719/article/details/54377375
安装成功后,执行如下操作。
开始进行如下操作如下操作:
MochaPro”。在dos窗口执行命令:
不会出现找不到module的问题。在dos窗口指定命令:
JSDemo文件夹用来存放要测试的JS代码、JSDemoTest文件用来存放测试代码、node_modules是用来存放npm安装的包。
在JSDemo文件下编写一个简单的测试代码:DW.js,在其中放置如下代码:
执行成功如下:
上述命令执行成功,会有如下结果:
安装成功后,执行如下操作。
开始进行如下操作如下操作:
1.创建项目文件夹
选择相应的路径,创建测试项目文件,例如在E盘创建文件夹“MochaPro”。在dos窗口执行命令:
D: mkdir MochaPro
2.进入MochaPro文件安装macho
进入到MachaPro文件夹下,执行命令:npm install macho,安装mocha花费时间相对较长。在Dos窗口执行命令:D: cd MochaPro npm install mocha命令执行成功之后,执行命令:mocha --version,验证安装是否成功
3.进入MochaPro文件安装unit.js
安装unit.js时,要与mocha方式保持一致,不然在require("unit.js")时,mocha提示找不到包。经过尝试,在MochaPro文件下安装时,在执行mocha进行javascript单元测试时,才不会出现找不到module的问题。在dos窗口指定命令:
D: cd MochaPro npm install unit.js
4.mocha + unit.js简单的测试实例
在MochaPro文件夹下,创建源代码文件与测试文件夹。JSDemo文件夹用来存放要测试的JS代码、JSDemoTest文件用来存放测试代码、node_modules是用来存放npm安装的包。
在JSDemo文件下编写一个简单的测试代码:DW.js,在其中放置如下代码:
function dw(str1){ return str1; }; //导出dw函数 module.exports= dw;在JSDemoTest文件夹下编写一个简单测试代码:dwTest.js,在其中放置如下代码:
//加载要测试的代码块 var dw= require("../JSDemo/DW.js"); //加载断言包 var test = require("unit.js"); //创建一个测试用例 describe("test dw",function(){ var str="hello"; it("test dw function",function(){ test.should(dw(str)).be.equal("hello"); }); it("test dw function",function(){ test.should(dw(1)).be.equal(1); }); });
5.执行mocha + unit.js简单的测试实例
在JSDemoTest路径下执行命令,mocha dwTest.js,在dos窗口的操作如下:E: cd "E:\MochaPro\JSDemoTest" mocha dwTest.js 或 E: cd MochaPro cd JSDemoTest mocha dwTest.js
执行成功如下:
6.安装istanbul
mocha执行通过,但是看不到清晰条理的,不知道相应的代码覆盖,安装istanbul来查看源程序的代码覆盖率。这个模块我选择安装的是全局,我按装局部无法使用该命令,可能是我之前安装npm时使用的全局的。在dos窗口执行命令:win+R cmd npm install -g istanbul在dos窗口执行命令:istanbul help来查看istanbul的命令帮助:
7.使用istanbul查看DW.js的代码覆盖
执行完mocha dwTest.js时,然后进入到JSDemo文件下,执行命令:istanbul cover DW.js,在dos窗口的操作流程就是:E: cd "E:\MochaPro" istanbul cover node_modules/mocha/bin/_mocha
上述命令执行成功,会有如下结果:
8.执行istanbul cover node_modules/mocha/bin/_mocha成功会创建coverage文件
这条命令同时还生成了一个 coverage 子目录,其中的 coverage.json 文件包含覆盖率的原始数据,lcov-report 是可以在浏览器打开的覆盖率报告,其中有详细信息,到底哪些代码没有覆盖到。相关文章推荐
- (NodeJS+unit.js+MochaJS+istanbul)简单操作实例
- JS单元测试简单的项目实例(mocha+unit.js+istanbul)
- JS单元测试简单的项目实例(mocha+unit.js+istanbul)
- Mocha+Unit.js操作实例代码
- node.js下redis简单操作实例
- node.js下mongoose简单操作实例
- node.js下mongoose简单操作实例
- node.js下mongoose简单操作实例
- node.js学习笔记(二)--使用mongoose简单的CRUD操作及测试模块mocha的使用
- node.js操作mysql简单实例
- node.js下redis简单操作实例
- node.js下redis简单操作实例
- node.js下mongoose简单操作实例
- node.js下mongoose简单操作实例
- node.js下mongoose简单操作实例
- Mocha+Unit.js操作实例代码
- node.js下mongoose简单操作实例
- node.js下mongoose简单操作实例
- CentOS简单操作命令及node.js的安装方法
- js操作数据库实现注册和登陆的简单实例