mocha测试

本文介绍了Mocha测试的相关内容。包括全局安装Mocha环境、package.json的基本配置、安装依赖,还阐述了测试单元和脚本的编写方法,如describe块和it块的使用、断言的判断方式。此外,说明了多种测试执行方式、展示效果设置、监听测试及配置方法,以及ES6语法测试脚本的操作步骤。

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


mocha测试
1/ 全局安装mocha环境 npm install --global mocha
package.json的基本配置{ "name": "mocha-demos", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [ "testing", "Mocha" ], "author": "", "license": "MIT", "devDependencies": { "babel-core": "~6.2.1", "babel-preset-es2015": "~6.1.18", "chai": "~3.4.1", "mocha": "~2.3.4", "mochawesome": "~1.2.1" }, "dependencies": { "node-fetch": "~1.3.3", "superagent": "~1.4.0" } }
安装依赖 npm i
测试单元的编写-测试单元函数模块暴露 module.exports 文件名eg:index.js
测试脚本的编写--文件名字 eg:index.test.js
测试脚本--接收require要测试的单元,引入断言库chai依赖的expect断言风格
describe块称为"测试套件"(test suite),表示一组相关的测试。它是一个函数,第一个参数是测试套件的名称("加法函数的测试"),第二个参数是一个实际执行的函数。
it块称为"测试用例"(test case),表示一个单独的测试,是测试的最小单位。它也是一个函数,第一个参数是测试用例的名称("1 加 1 应该等于 2"),第二个参数是一个实际执行的函数。
头部是expect方法,尾部是断言方法,比如equal、a/an、ok、match等。两者之间使用to或to.be连接。
断言,就是判断源码的实际执行结果与预期结果是否一致,如果不一致就抛出一个错误


测试 mocha index.test.js 可以同时测试多个案例
通常情况下将所有 测试文件放在test文件夹下,输入mocha可以进行所有并列测试文件的执行
如果 test文件夹下有另外的文件夹 需要执行测试文件 输入mocha --recursive 这样不论test下多少文件,都可以被执行
通配符mocha test/{a,b}.js 执行测试test下的a,b文件
通配符mocha typ/a/*.js 执行测试test下的a文件下的所有测试文件
展示效果
mocha --reporter 默认spec 还可以设置为 tap/dot/nyan/landing/list/progress/JSON/JSON stream/min/doc等
使用模版
npm install --save-dev mochawesome 
mac 专用 ../node_modules/.bin/mocha --reporter mochawesome
生成mochaawesome-reports目录 查看html文件即可
tips:windows下需要安装全局环境 npm i -g mochawesome --save-dev 然后在相应文件夹下 执行 mocha --reporter mochawesome
监听测试: mocha --watch/mocha -w
--bail, -b 指定只要有一个测试用例没有通过,就停止执行后面的测试用例
--grep, -g用于搜索测试用例的名称(即it块的第一个参数),然后只执行匹配的测试用例。
--invert, -i表示只运行不符合条件的测试脚本,必须与--grep参数配合使用。eg:mocha --grep "1+1是等于2" --invert
配置 在test目录下新建mocha.opts文件 写入--reporter tap --recursive 配置 执行mocha 即可运行以上指令
es6
如果测试脚本使用的是es6语法编写的 按以下步骤操作

第一步 安装Babel依赖 npm install babel-core babel-preset-es2015 --save-dev
第二步 在项目目录下面,新建一个.babelrc配置文件。写入配置 {"presets": [ "es2015" ]}
第三步 使用--compilers参数指定测试脚本的转码器;测试 ../node_modules/mocha/bin/mocha --compilers js:babel-core/register
上面代码表示,运行测试之前,先用babel-core/register

 

转载于:https://www.cnblogs.com/hrr666/p/10568819.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值