在我们日常测试工作中,编写测试用例往往花费较多时间,而且设计的测试用例冗杂和不完整,从而造成用例执行检查不完整,效率低下,不能及时发现项目缺陷。
因此提高测试用例编写和执行效率迫在眉睫,一般来说,优化测试用例主要从以下几个方面:
1、优化用例框架
优化测试用例,首先需要优化用例设计,而好的用例设计需要好的用例框架支撑。
一般用例框架以测试方法为基础,分为三层:
第一层,测试类型,考虑系统所需测试的类型;
第二层,如果用例侧重于场景法的话,那么就是场景考虑,暂不思考如何实现。如果用例设计偏重于逻辑路径的话,那么就是每个路径主要需实现的功能;
第三层是功能点,以场景为导向,考虑的是实现这个场景需要哪些功能模块支撑,每个模块做什么;以模块为导向的则考虑每个模块中主要实现的功能点;以路径为导向,则是考虑路径中功能点的实现。
2、组件机制与模块功能的分离
组件有自己使用的机制,与其实现的功能点没有任何关系,最常见的是调度机制和配置读取机制。这些都可以剥离出来单独进行测试,无需在每个模块中测试,重复编写测试用例。
3、重视公共用例
优化测试用例,需要重视公共用例。一般来说,公共用例有三类:
第一类,测试方法在所有项目中通用,类似于翻页、导出、上传等;测试方法统一,会因为设计的不同在每个项目中略有不同,但在一个项目的各个地方的功能实现基本是一致的。此时的测试用例可以作为公共用例。
第二类,在一个项目中多个组件共同使用的方法,此时会将用例设计与用例都单独作为一份进行编写,执行时也只需要执行一遍就可以,不需要在每个组件中再单独都执行。
第三类,还会有一种比较不常见的公共用例,例如在报表系统中的ETL过程,虽然ETL过程是对数据进行抽取、转换、加载,是对不同的数据源进行处理,但实际在流程处理上是一致的,只会在需要进行数据进行有条件的转换时不一致。因此整一套流程实际就是一份公共用例。
4、条件细分 正向组合
如果涉及到的用例是由很多条件组合控制的话,尽量将用例设计中的各个条件细分到最小的粒度,这时很多的用例设计就有了共同的地方,此时就会出现很多可复用的测试用例设计,这样能够减少用例设计的工作量。
然后再在细分到最小粒度的用例设计基础上进行一定的组合优化,因为有些正向数据实际是由多个最小粒度的条件组合而成,不需要单独进行验证,所以组合后能够减少用例执行的时间。
5、场景分析剔除
对于状态控制很多的用例,需要进行一定的场景分析,对一些不存在的场景进行用例的删除。因为即使开发没有做对应的控制,要求开发修改的可能性也非常小,并且此类的修改没有意义。
另外,为了提高测试用例的编写效率和质量,我们也可以使用开发工具,确保测试覆盖率。如CoCode开发云使用AI,能够自动生成每个需求的正向反向多维度测试用例,提高测试覆盖度和全面性,保障测试质量,减轻测试人员工作量,提高20%-30%工作效率。
目前CoCode发布一系列AI开发工具:Co-Project智能项目管理工具(需求条目化、自动生成测试用例)、需求分析工具、评审分析工具。项目管理平台发布4大版本,30天免费试用。CMMI落地工具上线,全面支持CMMI3-5级高效落地。