Skip to content

测试

单元测试

单元测试是指对前端代码中的每一个模块(函数、组件等)进行测试的过程,可以通过自动化测试工具(如 Jest、Mocha、Karma 等)来完成

代码覆盖率

单元测试质量的好坏可以通过代码覆盖率来判断:

1、语句覆盖率(Statement Coverage):用于衡量被测试代码中每条语句的执行覆盖情况

2、行覆盖率(Line Coverage):用于衡量被测试代码中的每行代码的执行覆盖情况

3、函数覆盖率(Function Coverage):用于衡量被测试代码中每个声明函数的执行覆盖情况

4、分支覆盖率(Branch Coverage):用于衡量被测试代码中每一个判定分支的执行覆盖率

除了代码覆盖率应尽量达到 100%,单元测试还应该设计不同场景下的测试用例来尽量覆盖边界情况。

集成测试

集成测试是指将多个组件或模块组合在一起进行测试,以验证它们在整个系统中的正确性和互操作性。

集成测试可以帮助发现多个组件之间的潜在问题,如接口不兼容、依赖关系错误等。

测试整个应用程序的功能和行为,以确保各模块协同工作,实现用户期望的功能

端到端测试 E2E

端到端测试是一种自动化测试方式,用于测试一个系统的完整流程,从用户界面到后端系统,确保所有组件和系统都能正确地协同工作。

它模拟用户的真实行为,包括用户输入和系统响应,测试整个系统的交互、一致性和可靠性,确保系统在用户层面上的功能和可用性,通常包括:

1、模拟用户操作

2、测试系统功能

3、验证数据一致性

4、环境模拟

5、监控和报告

常见库:

1、Cypress

2、Puppeteer

3、TestCafe

4、Nightwatch.js

5、Playwright:支持 Chromium、Firefox 和 WebKit 三种浏览器

参考

https://guide.duanhl.com/project/test/unit.html#%E4%B8%BA%E4%BB%80%E4%B9%88%E9%9C%80%E8%A6%81%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95