“测试是为发现错误而执行程序的过程”。from * 软件测试的艺术
针对不同的测试对象的属性,产生了不同的测试方法。当业务架构-->应用架构--〉技术架构后,我们从上往下进行划分,各个系统之间的关系及系统内部之间的关系,暂且不讨论是单体架构,还是微服务架构,无非是讨论如何将系统划分的符合当前的业务发展情况。此时,如果你负责该系统的测试工作,当前考虑到系统运行的环境,系统自身,系统之间的交互,这些可以成为你的测试对象。
接着,假设系统环境稳定,我们深入到系统内部分析,以 IntelliJ IDEA 建立 java 项目为切入点,范围由大到小:project > module > package > class > method,那么从不同的粒度上分析,也可以得到不同的测试对象。
测试的对象,可以从很多维度上进行划分,下面说一些常见的划分,不管是单元测试,集成测试,还是接口测试,性能测试,都是从各个维度上划分出对象,针对其测试形成测试方法,所以,在测试过程中,也可根据项目特点进行组合或者拆分形成测试对象,看能不能发现测试错误。
这张图参考来源是《测试架构师修炼之道:从测试工程师到测试架构师》
软件开发流程,其实是以时间为维度,将针对于软件开发的各项活动串起来,所以,寻找测试对象及实施相应的测试手段可以在不同的阶段进行。比如,需求评审的时候,将产品文档作为测试对象,通过发现并纠正文档的错误,从源头上保障软件质量。因此,因地制宜的划分对象,测试对象也是很有意思的事情。