当前位置: 首页 > news >正文

前端jest(vitest)单元测试快速手上

前言

vitest和jest除了配置上不同,其他的基本差不多,这里以jest为例进行说明


安装依赖

npm install -D jest

编写测试

例如,我们将编写一个简单的测试来验证将两个数字相加的函数的输出。

sum.js

export function sum(a, b) {
  return a + b
}

sum.test.js / sum.spec.js

import { describe, expect, test } from "jest";
import { sum } from "./sum";

describe("sum function", () => {
	test("adds 1 + 2 to equal 3", () => {
		expect(sum(1, 2)).toBe(3);
	});
	...
});

运行测试

package.json 中添加以下脚本

"scripts": {
  "test": "jest"
}

同理如果用的是vitest则为"test": "vitest"

之后运行npm run test便可以测试了,测试不通过会在控制台报错

自定义配置

创建jest.config.js

module.exports = {
  testEnvironment: 'node', // 或者 'jsdom' 用于浏览器环境测试
  testMatch: ['**/__tests__/**/*.test.js', '**/?(*.)+(spec|test).js'], // 测试文件匹配模式
};

如果是vitest
在 vite.config.js 或者创建 vitest.config.js 进行配置

import { defineConfig } from 'vite';

export default defineConfig({
  test: {
    environment: 'jsdom', // 或者 'node'
    include: ['**/__tests__/**/*.test.js', '**/?(*.)+(spec|test).js'], // 测试文件匹配模式
  },
});
http://www.dtcms.com/a/130111.html

相关文章:

  • Redis基础知识:
  • 解释:指数加权移动平均(EWMA)
  • C++ 编程指南36 - 使用Pimpl模式实现稳定的ABI接口
  • 链接世界:计算机网络的核心与前沿
  • 使用SSH解决在IDEA中Push出现403的问题
  • 基于电子等排体的3D分子生成模型 ShEPhERD - 评测
  • 从代码学习深度学习 - 多头注意力 PyTorch 版
  • 【2025软考高级架构师】——项目管理(3)
  • 【毕设】Python构建基于TMDB电影推荐系统
  • L2范数与权重衰退
  • 烟花爆竹储存作业安全要求
  • nodejs构建项目
  • 前端开发中的问题排查与定位:HTML、CSS、JavaScript(报错的解决方式)
  • 高效的内容搜索工具推荐
  • 【工程开发】LLMC准确高效的LLM压缩工具(一)
  • MIPI协议介绍
  • (四十七)Dart 中的 `identical` 函数与 `const` 关键字
  • GM DC Monitor v2.0 数据中心监控预警平台-CMDB使用教程(第十篇)
  • 【图像处理基石】什么是通透感?
  • cropperjs 2.0裁剪图片后转base64提示“Tainted canvases may not be exported”跨域问题的解决办法。
  • 0x03.Redis 通常应用于哪些场景?
  • 【从0到1搞懂大模型】transformer先导:seq2seq、注意力机制、残差网络等(6)
  • C++ 数据结构之图:从理论到实践
  • React(1)基础入门
  • 【模拟电路】PIN光电二极管和APD雪崩光电二极管
  • I/O进程5
  • fio的资料
  • 基于FPGA的一维时间序列idct变换verilog实现,包含testbench和matlab辅助验证程序
  • L1 第6次课 for循环
  • Python学生信息查询