1、安装
npm install --save-dev jest @types/jest ts-jest
2、确保package.json中存在配置
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"lint": "eslint .",
"start": "react-native start",
"test": "jest"
},
3、配置jest.config.js
确认项目根目录中存在jest.config.js的配置文件,如果不存在请自行创建,内容如下:
module.exports = {
preset: 'react-native',
transform: {
'^.+\\.(ts|tsx)$': 'ts-jest',
},
testEnvironment: 'node'
};
上面的内容是ts的相关配置,从rn 0.83开始系统默认使用ts。
4、在项目根目录创建单元测试目录及单元测试类
目录结构如下:

文件AESUtils.test.ts内容如下:
import { AESUtils } from "../rn/utils/AESUtils";
describe('',() => {
test("测试aes的加解密", () => {
const aesUtils = new AESUtils();
const srcString = "乔乔";
//获取aeskey
const aesKey = aesUtils.generateAESKey();
//加密
const encryptString = aesUtils.encrypt(srcString,aesKey);
//解密
const decryptString = aesUtils.decrypt(encryptString,aesKey);
expect(srcString).toBe(decryptString);
})
});
运行测试
#运行全部单元测试
npm test
#指定运行某个测试文件
npm test --AESUtils.test.ts