使用karma+jasmine进行单元测试
这是我的第一篇博客,想想还有一点点的小激动~~~
下面就介绍一下怎么使用karma+jasmine进行单元测试。
1.创建项目
用webStorm打开此项目,可以看到已经创建了一个package.json文件。
2.安装必要的包
npm install karma --save
npm install karma-jasmine --save
npm intall karma-chrome-launcher --save
npm intall jasmine-core --save
npm install karma-cli -g
3.创建被测试文件
在unitTest项目下面创建子文件夹js,创建index.js,index2.js,index3.js,jasmineTest.js文件。
在index.js中创建测试函数
在index2.js中创建一个测试函数
在index3.js中创建一个函数
在jasmineTest.js中创建测试用例
4.创建测试文件
在unitTest文件夹下面创建子文件夹test,使用命令行karma init初始化karma的配置文件。
创建之后,在test文件夹下面会生成一个karma.conf.js文件。
在这个文件里面修改部分设置:
5.开始测试
在命令行中键入karma start;会自动启动谷歌浏览器:
点击按钮,按下F12,点击console:
可以看到所有的函数测试成功。
6.出错的情况
如果说我们期待index.js文件中的test函数输出结果是‘abcd’,可是test函数输出的结果是‘abc’,这样测试就不通过,就会报错。
同时,控制台也会打印出错的log:
到此处,单元测试就结束了。
7.单元测试覆盖率
当我们在控制台键入karma start的时候会生成一个coverage文件夹;
点击index.html文件,在浏览器中打开,可以查看到测试报表:
点击下面的index.js.html,index2.js.html,index3.js.html,jasmineTest.js.html打开之后,可以看到单个文件测试的函数,下面是index.js.html的生成报表:
其中,粉色背景的是没有测试的函数。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步