在 VSCode 中编写简单 JavaScript 测试用例的步骤和示例 📅 发布时间:2026/7/15 22:01:28 👁️ 浏览次数: 步骤 1创建项目文件夹在你的工作区中创建一个新文件夹例如VSCode-js-test-demo。步骤 2初始化项目在 VSCode 中打开该文件夹。打开终端 (Ctrl 或Terminal - New Terminal)。运行命令初始化项目npminit -y这会创建一个默认的package.json文件。步骤 3安装测试框架选择一个测试框架安装。这里以流行的Jest为例npminstall--save-dev jest(备选你也可以选择MochaChai等组合)步骤 4编写被测试的函数创建一个文件math.js写入一个简单的函数// math.jsfunctionadd(a,b){returnab;}functionsubtract(a,b){returna-b;}module.exports{add,subtract};步骤 5编写测试用例创建一个测试文件math.test.js(Jest 默认会查找*.test.js文件)// math.test.jsconst{add,subtract}require(./math);// 导入要测试的函数// 描述测试组 (通常描述被测试的功能模块)describe(数学函数测试,(){// 测试用例 1: 测试 add 函数it(应该正确计算两个数字的和,(){// 断言调用 add(2, 3)预期结果是 5expect(result).toBe(5);expect(add(-1,1)).toBe(0);});// 测试用例 2: 测试 subtract 函数it(应该正确计算两个数字的差,(){// 断言调用 subtract(5, 3)预期结果是 2expect(subtract(5,3)).toBe(2);expect(subtract(10,20)).toBe(-10);});});步骤 6配置package.json运行脚本打开package.json在scripts部分添加一个test命令{name:js-test-demo,version:1.0.0,scripts:{test:jest// 添加这行},devDependencies:{jest:^29.7.0}}步骤 7运行测试在终端运行命令npmtest预期输出你会看到类似下面的输出表明两个测试用例都通过了PASS ./math.test.js 数学函数测试 ✓ 应该正确计算两个数字的和 (2 ms) ✓ 应该正确计算两个数字的差 Test Suites: 1 passed, 1 total Tests: 2 passed, 2 total Snapshots: 0 total Time: 0.123 s Ran all test suites.进阶单独调试某个测试用例的返回值如果你只想查看某一个测试用例的返回值不需要运行全部用例可以将目标测试用例的 test() 改为 test.only()仅运行该用例// math.test.jsconst{add,subtract}require(./math);// 导入要测试的函数// 描述测试组 (通常描述被测试的功能模块)describe(数学函数测试,(){test.only(应该正确计算两个数字的和,(){// 先接收返回值constresultadd(2,3);// 打印具体返回值标注场景便于识别console.log(【应该正确计算两个数字的和】返回值,result);expect(result).toBe(5);});});运行 npm test终端只会输出该用例的返回值和测试结果更聚焦。总结总结创建项目npm init -y安装测试框架npm install --save-dev jest编写功能代码 (math.js)编写测试代码 (math.test.js)使用describe,it,expect等配置package.json的test脚本运行测试npm test这样就完成了一个简单的 JavaScript 测试用例。你可以根据需要扩展功能函数和添加更多的测试用例。
小程序毕设选题推荐:基于微信小程序的古代天文知识科普系统基于微信小程序的古代天文知识科普系统设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am… 2026/7/7 14:04:25
【课程设计/毕业设计】基于安卓Android微信小程序的天文观星系统基于微信小程序的古代天文知识科普系统设计与实现【附源码、数据库、万字文档】 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am… 2026/7/13 17:20:55
四层电梯PLC设计S7-1200含博途程序HMI > 电气原理图CAD报告m13(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码 四层电梯PLC设计S7-1200含博途程序HMI 电气原理图CAD报告m13(设计源文件万字报告讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码1、采用PLC构成四层简易电梯电气控制系统。电梯的上、下行由一台电动机拖动,电动机正转为电梯上升&#… 2026/7/7 2:33:36
TUSB8044 USB 3.1集线器寄存器配置实战:从原理到扩展坞设计 1. 项目概述与核心价值在当前的硬件开发领域,尤其是消费电子和嵌入式系统设计中,USB集线器早已不是简单的“一分多”信号中继器。它扮演着连接主机与众多外设的智能枢纽角色,其性能、兼容性和功能丰富度直接决定了整个系统的用户体验。德州仪… 2026/7/15 21:57:42
如何快速掌握暗黑破坏神2角色编辑器:终极免费工具完全指南 如何快速掌握暗黑破坏神2角色编辑器:终极免费工具完全指南 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 你是否曾经在暗黑破坏神2中花费数百小时刷装备,却始终无法获得理… 2026/7/15 21:55:41
Cesium OGC- wms服务教程 OGC- wms服务 OGC- wms服务 ▶ 在线运行案例 案例合集: 三维可视化功能案例(threehub.cn)开源仓库github地址: https://github.com/z2586300277/three-cesium-examples400个案例代码: 网盘链接 你将学到什么 Scene / Camera… 2026/7/15 21:53:34
清华大学196小时Python教程:零基础入门到项目实战全解析 1. 先搞清楚这套教程到底适合谁,以及它解决什么问题这套被冠以“清华大学196小时”标签的Python教程,最核心的价值在于它试图为完全零基础的学习者提供一条从编程门外汉到能够上手实际项目的路径。它瞄准的不是已经会写代码想深入某个领域的人࿰… 2026/7/15 21:51:34
Halcon卡尺测量:从基础算子到Metrology模块的工业实践 1. Halcon卡尺测量技术概述在工业视觉检测领域,精确测量是保证产品质量的关键环节。Halcon作为业界领先的机器视觉软件,提供了两种核心的卡尺测量方法:基础算子(gen_measure_rectangle2/measure_pos)和高级Metrology模… 2026/7/15 21:49:33
协方差矩阵热力图:用seaborn可视化数据线性关联 1. 为什么一张热力图能让你一眼看懂数据的“脾气”在做数据分析或者建模前,我常被问一个问题:“这堆变量之间到底有没有关系?哪个跟哪个最‘黏糊’?”——这不是玄学,是实打实的数学问题。而协方差矩阵(Cov… 2026/7/15 21:47:32
行星减速机的工作原理是什么?从齿轮运动关系到减速比计算 一、行星齿轮机构的组成 标准行星齿轮机构主要包括: 太阳轮; 行星轮; 内齿圈; 行星架。 太阳轮位于机构中心。 多个行星轮围绕太阳轮均匀布置,行星轮内侧与太阳轮外啮合,外侧与内齿圈内啮合。 行星轮通过轴… 2026/7/15 0:03:00
阅读Java开源框架源码的心得分享! 前几日闲来无事有幸看到了一位博主分享自己阅读开源框架源码的心得,看了之后也引发了我的一些深度思考。我们为什么要看源码?我们该怎么样去看源码? 其中前者那位博主描述的我觉得很全了(如下图所示),就不做… 2026/7/15 0:03:00
【LINUX】驱动 【LINUX驱动】【字符设备】【中断】【Platform】【网课 设备树】【GPIO】【PINCTRL】【INPUT】【IIC】【SPI】【网络驱动】【屏幕驱动】【一 设备树】【二 内核模块编译】【三 基本驱动框架】【四 Platform总线设备驱动框架】【五 驱动子系统】【六 综合】 2026/7/15 0:07:01
Git reset 与 revert 深度对比:5个关键差异与 3 种典型应用场景 Git Reset 与 Revert 深度对比:5个关键差异与3种典型应用场景在团队协作开发中,代码版本管理如同行走钢丝——一步失误可能导致整个项目陷入混乱。作为Git进阶用户,你是否曾在深夜面对错误的提交束手无策?是否在强制推送后收到同事… 2026/7/13 8:31:55
GitHub 学生包申请避坑:5个常见失败原因与开发者工具调试方案 GitHub 学生包申请技术排障指南:5个高频失败场景与开发者工具实战方案第一次尝试申请GitHub学生包时,我盯着屏幕上那个不断转圈的加载动画整整15分钟,最终只等来了一行冰冷的错误提示。这可能是许多开发者共同的经历——明明按照教程操作&… 2026/7/14 18:25:04
冒烟测试用例设计规范:5%-10%覆盖率下的3类核心场景与执行标准 冒烟测试用例设计的黄金法则:5%-10%覆盖率下的精准筛选策略在快节奏的敏捷开发环境中,冒烟测试作为质量保障的第一道防线,其重要性不言而喻。当测试资源有限而时间紧迫时,如何从海量测试用例中精准筛选出那关键的5%-10%࿰… 2026/7/14 5:09:41