- Objective: 项目测试 - Breadcrumb: # 概念阐释 通过运行**以前已经执行过的测试**,以确保以前的代码和新添加、修改、优化的代码都能正常使用。 在添加新功能与修改代码后有可能会影响旧的代码,使得以前运行正常的代码现在出现错误,这种现象叫做回归。 #### 自动化回归测试 使用[[GitHub Actions]]设置一个持续集成(CI)/持续部署(CD)的工作流程,在每次更改代码并推送到版本控制系统(如 Git)时自动运行所有测试 - 持续集成。以便快速发现问题从而解决。 # 实例 **实现代码** ```js // add.js function add(a, b) { return a + b; } module.exports = add; ``` **测试代码** ```js // add.test.js const add = require('./add'); test('adds 1 + 2 to equal 3', () => { expect(add(1, 2)).toBe(3); }); ``` - 运行`npm test` 结果显示正常 **回归测试** ```js // add.js function add(a, b) { return 0; // 不正确的修改 } module.exports = add; ``` 当add.js出现了一个不正确的修改,在运行测试时就代码发生了错误,此时称为回归。 # 相关内容 #### 其他测试 其他类型的测试可能侧重于新功能的验证、性能评估、用户接口的可用性、安全性等多种不同的目标。 # 参考资料