什么是单元测试
单元测试与e2e测试不同的是,单元测试是单个函数的测试,检测返回值是否符合预期。
而e2e测试是在特定的设备上整体的测试。
框架选择
jest是一个单元测试常用的框架,Jest自动执行.spec.js或.test.js为后缀测试的测试文件。
通常命名规范是测试文件名.spec.js
使用
安装
yarn add jest
引入
import { getEnv } from '../src/openApp'
jest提供了几个核心的方法用于测试,分别是describe,test,expect
decribe用于分组,test包裹一个完整的测试案例,expect用于将执行被测函数,to be/to equal用于被测函数正确性的验证。
一个jest测试文件的基本结构如下
import { getEnv } from '../src/openApp'
descript('case 1:,()=>{
test('func getLink :', () => {
expect(getEnv(env)).toEqual({
os: 'ios',
app: appName
})
})
}
结果以及覆盖率
可以得到每一个测试文件是否符合预期。
可以得到每一个被测文件的覆盖率,可以精确到是哪一行代码没有被测试到。
自定义配置
通过在根目录下添加一个jest.config.js的配置文件,可以自定义测试的配置
module.exports = {
testEnvironment: 'node',//测试的环境选择,
}