第一部分:复用思想概述
在工作中,你有没有过这种感觉 ,某个功能用例之前设计过或者类似的工作之前干过。
再次干还需要重新设计,所以感觉有一种浪费时间或者没有意义的感觉。
本文希望提供一种策略和原则,指出测试工作的中的‘道’,让我们找到工作中的解决方案即‘复用思想’,那么何为复用?
复用是一种软件开发原则,它鼓励使用现有的资源来构建新的软件系统或其组件。这种思想基于一个简单的观察:许多软件问题和需求在不同的项目和上下文中是相似的,因此可以利用已有的解决方案,而不是从头开始。
比如深入现代软件开发中,库和框架的广泛使用是复用思想的一个明显例子,如Java的Spring框架或Python的Django框架。利用框架团队可重复利用已封装好的功能。
接下来我将探讨复用思想结合测试过程提供几个应用案例
主要内容如下:
1、测试计划模板化
2、测试用例模块化
3、测试报告工具化
4、复用思想的通用策略
第二部分:复用在测试工作中的应用
同理,在软件测试中,复用意味着在不同的测试场景、项目或周期中重复使用测试用例、测试脚本、测试数据和测试工具。这不仅包括测试代码的复用,还包括测试设计、测试方法和测试流程的复用。
那么如何将复用思想贯穿到整个测试流程中呢?
接下来谈谈我在工作中的几个小案例?
1、测试计划进度表模板化
模板,这个词相信大家并不陌生,通过模板可以是我们更方便、更高效的完成工作。
测试计划模板包含了所有关键要素,如测试目标、范围、方法、资源、时间表等。
当我使用我们公司的计划模板后发现有一个人员进度表每次设计时都耗费很多时间,而且意义不大,也不太适合目前我们的工作方式,类似于下面这种:
这是因为系统测试,时间跨度大,阶段多,所以导致预计开始时间、预计结束时间每次划分很耗时间,经过重新设计变为了这样:
这种能解决两个问题:
1)省时,写这个表格至少省20分钟
2)这种大型的计划,提供整体进度就可以,同时也符合一般的项目管理规划。
2、测试用例模块化
测试用例模块化的核心思想是将具体的功能页面划分为微小的功能模块,将这些功能封装成统一的测试用例集合,当重新测试一个新的页面只要找到所需要的用例集重新组装就可以!
这就像造汽车一样,一辆完整的车都是经过各个微小的部件组装而成。
比如下面图片上传用例:
等下次我写图片上传功能时直接就可以复制上面的用例。
3、测试报告工具化
想一下,当你写测试报告的时候最令你头疼的是什么?
是不是各种图表的生成
正常图表的生成顺序是经历过数据整理->数据筛选->数据透视表
如果一份报告有5个图,你要做5次这个过程
你一年产出这种报告5次的话,你要做25次
如果把这个过程倒过来,每种类型数据透视表整理成一个工具模板,只需要往里面输入数据,最起码解决每次数据透视表生成的过程。
这套流程跑下来,一份报告能省时至少40分钟到一个小时。
以上只是在测试过程中可以复用思想的几个小应用,那么有没有通用的策略复用到任何项目中呢。
第三部分:复用思想的通用策略
我想到最有用的三个通用策略分别是建立测试资产库、标准化测试流程和模板以及自动化测试框架,它们相互关联并共同促进测试的复用性和效率。
1. 建立测试资产库
目的:集中存储和管理测试用例、测试脚本、测试数据、文档和其他测试相关资源。
实施:
创建一个中央数据库或仓库,用于存储所有测试资产。
确保所有团队成员都能访问并根据授权进行贡献。
实施版本控制,以追踪变更并维护历史记录。
2. 标准化测试流程和模板
目的:确保测试活动的一致性和可预测性,减少重复工作,提高效率。
实施:
制定统一的测试流程,包括测试计划、执行、报告和回顾。
开发通用模板,如测试计划模板、缺陷报告模板和测试用例模板。
提供培训和指导,确保所有团队成员理解和遵循这些流程和模板。
3. 自动化测试框架
目的:提高测试执行的速度和频率,减少手动测试的负担,提高测试覆盖率和准确性。
实施:
选择合适的自动化测试工具和框架,如Selenium、JUnit、TestNG等。
开发可复用的自动化测试脚本,这些脚本可以在不同项目中使用。
集成自动化测试框架到持续集成/持续部署(CI/CD)流程中。
结论:
今天我们主要聊了将复用思想打通到测试各个环节中,并举了一些相关的例子辅以讲述,之后总结出我认为最有价值的3个策略,分别为建立测试资产库、标准化测试流程和模板以及自动化测试框架。这3个策略之间的综合使用辅之持续改进思想,我相信我们的测试之路会越走越轻松,妥妥的赢家!
作者:M&T.