这是我参加青训营笔记创作活动的第14天
E2E 和 unit-test
- 端到端测试(E2E)
E2E或者端到端( End-To-End )或者UI测试是一种测试方法,它用来测试一个应用从头到尾的流程是否和设计时候所想的一样。简而言之,它从一个用户的角度出发,认为整个系统都是一个黑箱,只有UI会暴露给用户。
单元测试(Unit Test )
测试驱动开发(TDD : Test-Driven Development ),单元测试就不陌生。单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。
比如写个加法函数add ( a,b ) {return a+b}
我们可以编写出以下几个
测试用例如∶
输入1和1,期待返回结果是2;
输入非数值类型,比如None、1、0,期待抛出异常。
把上面的测试用例放到一个测试模块里,就是一个完整的单元测试。
如果单元测试通过,说明我们测试的这个函数能够正常工作。如果单元测试不通过,要么函数有bug,要么测试条件输入不正确,总之,需要修复使单元测试能够通过。
那在Vue中的单元测试中主要使用两个工具分别是(Karma+Mocha )
我怎么知道要测试什么
大多数时候有两种情况:
- 你继承遗留代码,其自带没有测试
- 你必须凭空实现一个新功能
那该怎么办?对于这两种情况,你可以通过将测试视为:检查该函数是否产生预期结果。最典型的测试流程如下所示:
- 导入要测试的函数
- 给函数一个输入
- 定义期望的输出
- 检查函数是否产生预期的输出
一般,就这么简单。掌握以下核心思路,编写测试将不再可怕:
输入 -> 预期输出 -> 断言结果。