循序渐进的敏捷-交叉测试
由于各种原因,团队人员换了一些人,新到的团队成员,由于对业务不够了解,对系统的代码和架构,也不是很清楚,很多时候测试也不到位,导致了一系列问题和bug。很多问题在我们看来都是不应该发生,或是当时如果仔细测试,是完全可以避免的问题。
针对于这样的情况。我们进行了总结和反思,决定尝试加入交叉测试,来提高系统的质量。
交叉测试的时间和范围
迭代的功能完成之后,开发人员互相检查别人的功能和代码,并进行足够的测试,测试和检查的范围包括系统数据库设计、业务需求、解决方案、代码(注释、代码风格)、数据表等。
交叉测试的流程
开发人员在完成一个功能之后,找到另一个人员,进行交叉测试
1. 讲解业务需求。
2. 讲解解决方案。
3. 功能演示
4. 代码交叉测试
5. 功能测试
期间,交叉测试人员,随时提出问题和看法,尽早发现开发者在业务和设计方面的问题。
交叉测试的优点
1. 对模块的了解不只局限在一个开发人员身上,分担了项目的维护风险;
2. 规范代码,至少在注释和代码风格方面能保障;
3. 避免一个人思考问题和对业务的理解存在的遗漏或盲点,多一个人查漏补缺会避免不必要的bug;
4. 确保所有的功能至少核心功能,都有两个以上的人测试到;
交叉测试的缺点
1. 交叉测试会占用开发时间,熟悉别人的功能和代码都要花不少的时间,我估计测试时间是开发时间的1/4至1/3;
2. 队员水平参差不齐,开发人员和交叉测试人员对业务和代码同样不了解,这样就无法保证交叉测试的质量;
3. 尽管花了很多时间,有可能还是无法保证交叉测试做完之后,测试范围覆盖到全部模块的业务,无法确保需求或是业务的问题;
4. 交叉测试会导致开发者会不关心bug的责任问题。
交叉测试注意的问题
1. 交叉测试者一定要理解开发人员的业务需求和解决方案,这样才能达到了业务讲解和理解的目的,才能提出问题;
2. 避免不讲业务需求和解决方案就直接进行测试,这样无法保证交叉测试的质量;
3. bug应该属于团队所有成员的,不应该由某个人来单独负责,bug也作为一项任务;
4. 关键性模块才进行交叉测试,这样既避免了交叉测试占用太多的开发时间,又避免了核心业务的不稳定;
5. 尽量避免不了解业务的人员去给其他开发人员做交叉测试;
作者:章为忠
如有问题,可以微信:18618243664 联系我,非常感谢。
关注我的微信公众号,获取相关的 源代码及视频资料。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?