什么是Jest?Jest是一个令人愉悦的JavaScript测试框架,其重点是简单性。 它适用于使用以下项目的项目:Babel,TypeScript,Node,React,Angular,Vue等! 特点
入门使用yarn以下命令安装Jest : yarn add --dev jest 或npm: npm install --save-dev jest 或者全局global安装 例子function sum(a, b) { return a + b; } module.exports = sum; 覆盖率报告jest --coverage 生成基本配置jest --init 语法匹配器toBe 普通匹配test('two plus two is four', () => { expect(2 + 2).toBe(4); }); // 用来检测基本数据的相等,对象需要使得toEqual toEqual相当于深比较,会递归对象或数组 特殊类型判断
异步方法测试callback 回调这里需要一个done来调用,然后使用try catch包裹。 test('测试回调异步',(done)=>{ let callback= (res)=>{ expect(res).toBe('this is callback'); } Ajax(callback) }) promise这里主要特指使用 test('测试promise的异步操作',()=>{ Post("ok").then((res)=>{ expect(res).toBe('ok'); }) Post("x").catch((res)=>{ console.log(res) expect(res).toBe('error'); }) }) enzymenzyme 来自 airbnb 公司,是一个用于 React 的 JavaScript 测试工具,方便你判断、操纵和历遍 React Components 输出。Enzyme 的 API 通过模仿 jQuery 的 API ,使得 DOM 操作和历遍很灵活、直观。Enzyme 兼容所有的主要测试运行器和判断库。 安装与配置npm install --save-dev enzyme 安装 babel配置yarn add --dev jest babel-jest @babel/preset-env @babel/preset-react react-test-renderer // babel.config.js module.exports = { presets: ['@babel/preset-env', '@babel/preset-react'], };
|
|