Jest Runner 是一个基于 Jest 的测试运行器,可以在多种环境下运行测试用例,包括本地、远程、Docker 等。
安装
你可以使用 npm 进行安装:
npm install jest-runner --save-dev
配置
在 package.json
文件中添加如下配置:
{ "jest": { "runner": "jest-runner" } }
使用
假设我们有以下测试文件 add.spec.js
:
test('adds 1 + 2 to equal 3', () => { expect(1 + 2).toBe(3); });
我们可以使用 Jest Runner 来运行它:
npx jest add.spec.js
或者,在 package.json
文件中添加脚本:
{ "scripts": { "test": "jest" } }
然后执行:
npm test add.spec.js
高级功能
运行多个测试文件
如果我们有多个测试文件,可以使用通配符来一次性运行它们。例如:
npx jest *.spec.js
运行特定的测试用例
如果我们只想运行特定的测试用例,可以使用 describe
和 test
函数的第一个参数来过滤:
-- -------------------- ---- ------- ---------------- -- -- - ---------- - - - -- ----- --- -- -- - -------- - ----------- --- ---------------- - - - -- ----- --- -- -- - -------- - ----------- --- ---
然后运行:
npx jest --testNamePattern='math'
快照测试
快照测试是一种自动化测试方法,可以比较数据的序列化版本。例如,我们可以使用快照测试来测试组件的渲染输出是否正确。
首先,在测试文件中添加一个快照测试:
import { render } from '@testing-library/react'; import MyComponent from './MyComponent'; test('renders correctly', () => { const { asFragment } = render(<MyComponent />); expect(asFragment()).toMatchSnapshot(); });
第一次运行测试时,会生成一个快照文件 __snapshots__/MyComponent.snap
,包含组件的渲染输出。
在后续的测试中,快照测试会将当前渲染输出与快照文件进行比较。如果两者不同,测试将失败并提示您更新快照文件。
结论
Jest Runner 是一个功能强大的测试运行器,适用于各种环境。通过学习本文介绍的基本和高级功能,你可以更加高效地编写和运行测试用例。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/50695