谈起测试
其实测试这个东西在我们项目流程中是必需的一个步骤。
那到底测试是什么?他到底承担了一个怎样的职责?
完整的软件测试工作包括单元测试、集成测试、确认测试和系统测试工作。单元测试工作主要在编码阶段完成,由开发人员和软件测试工程师共同完成,其主要依据是详细测试。
确认测试和系统测试是在软件开发完成后,验证软件的功能与需求的一致性、验证软件在相应的硬件条件下的系统功能是否满足用户需求,其主要依据是用户需求。
测试从下到上大致可以分为单元测试
、端到端测试
和系统集成测试
。
单元测试是最基础的,一般其代码量也是最多的,一般是针对函数、方法和类的测试,但其写好后改动一般是最小的,单元测试是其他测试的基石。
端到端测试是基于单元测试之上的,主要针对API和接口的测试,由于只针对接口进行测试,相对单元测试,端到端测试代码量更少,但面对需求的变更其测试代码也更容易变更。
系统集成测试主要是对整个系统进行测试,针对地是客户端的使用界面。
以现在主流的前后端分离来说明:
单元测试 | 端到端测试 | 系统集成测试 |
---|---|---|
针对视图层中的某个视图方法的测试,或者针对模型层中某个orm的测试 | 模拟接口请求进行测试 | 模拟用户操作进行测试 |
往往开发人员不喜欢测试,主要可能有以下几个原因&#