前端单元测试

1. 前端单元测试

首先我们要明确测试是什么:

对于前端开发过程来说,这里的特定目标就是指我们写的代码,而工具就是我们需要用到的测试框架(库)、测试用例等。检测处的结果就是展示测试是否通过或者给出测试报告,这样才能方便问题的排查和后期的修正。

为什么需要单元测试?

2. TDD (测试驱动开发)

其基本思路是通过测试来推动整个开发的进行。

TDD的过程是:

3. BDD (行为驱动开发)

行为驱动开发(BDD),重点是通过与利益相关者(简单说就是客户)的讨论,取得对预期的软件行为的认识,其重点在于沟通

BDD过程是:

4. Mocha / Karma + Travis.CI 的前端测试工作流

补充

补充:

TDD(Test-Driven Development)流程(红绿重构循环):

  1. 写一个失败的测试(Red);
  2. 写最少代码让测试通过(Green);
  3. 重构代码保持测试通过(Refactor);
  4. 重复。

BDD(Behavior-Driven Development)流程:

  1. 用自然语言(Given/When/Then)描述业务行为;
  2. 与产品/QA 对齐形成可执行的"用户故事";
  3. 转化为自动化测试用例;
  4. 跑通测试 → 实现 → 重构。

前端测试常见工具 :

  • 单元/集成测试:Jest、Mocha + Chai、Vitest;
  • DOM 模拟:jsdom / happy-dom;
  • 端到端测试:Cypress、Playwright;
  • CI 集成:Travis CI、GitHub Actions 等。

来源整理自:vue3js.cn 面试官系列