软件测试过程的改进是一个持续的过程,上一次的过程改进效果显著,具体可参考《软件测试过程改进小记》。于是当新版本的QA报告出来后,测试成员们迅速得召开了内部讨论会,讨论的方式主要是头脑风暴式的,围绕报告的数据,抛出所有的问题,然后再确定目前最急需解决的问题。
于是我们最终确定了应该重点解决遗留bug率偏高的问题。首先解释一下遗留bug率的定义,分母是这个版本总共发现的有效bug数,分子是这个版本发现但未解决的bug数。iOS & Android 这两个客户端的数据大概在20%以上,后台的数据在40%以上(上个版本高达60%以上)。我们从软件研发流程上分析了问题的原因:客户端进入全测试的标准是高单全部解决,中低单80%解决,经过全测试后会产生一些新的bug,这个阶段只要判定为不影响发布的bug都不会解决。提全测试时往往是刚刚达标80%,再加上全测试遗留的一些bug,最终遗留bug率就很容易是20%以上了。至于后台部分,由于没有严格的全测试标准,并且后台功能有些可以设置开关暂时屏蔽,有些可以等客户端提审后再修复,所以遗留bug率是更高的。
基于上述分析,我们在原来的基础上提高了全测试阶段和发布阶段的测试准入要求,比如中低单80%的解决率提高到了90%,我们认为在进入全测试之前修复更多的bug,会有助于提高版本质量。然而实际在和开发的讨论会上,我们遇到了非常大的阻力,原因是开发leader认为他们做不到我们提出的要求,并质疑遗留bug率这个数据的意义,并一再强调能按时完成新需求的开发任务已经很不错了,修改Bug只能看优先级,影响发布的高单是必须改的,其它都可以商量。
会后,我反思了一下为什么会议没有取得预期的结果。其一,分析问题还是停留在了比较浅的层面,bug遗留率高是一个问题,但不仅是表面上看到的这个问题。这个问题还可以继续分解,比如遗留bug的类型分析,以及挂起bug的分析等。其二,在会议之前没有和开发leader沟通会议内容以及期望达成的目标,导致会议时间很长且没有达到预期的目标。这次的过程改进有分歧和碰撞,是挑战也是成长的机会。解决问题的关键还是要解决意识的分歧,只有大家有共识需要解决这个问题,那么问题是一定会有改善的。
(待续)
相关推荐
- **软件测试策略与方法经验谈**:分享实践经验,探讨有效的测试策略。 - **编写高质量文档指南**:提高文档编写的质量和效率。 - **测试工作改进**:探讨如何持续改进测试工作的效率和质量。 - **软件测试文化**:...
在软件测试过程中,沟通、文档记录和问题追踪也是非常重要的技能。有效的沟通能够确保测试团队与开发团队、项目管理者之间有顺畅的信息交流;文档记录是保证测试过程可追溯性和持续改进的基础;问题追踪则是确保每个...
11. **测试报告**:测试结束后,整理测试过程中的所有信息,编写测试报告,包括测试结果、未解决问题、建议改进等内容,为项目决策提供依据。 以上就是软件测试流程的主要步骤,每个阶段都需要专业技能和严谨的态度...
在项目管理和软件测试过程中,组织架构和职责划分是确保高效运作的关键。华友公司的研发部组织结构清晰,包括项目管理、产品设计、编码、测试、质量保证和软件配置管理等多个职能,这些部门既独立又相互协作,通过...
在谈到软件测试时,许多人都引用Grenford J. Myers在《The Art of Software Testing》一书中的观点: ①、软件测试是为了发现错误而执行程序的过程; ②、测试是为了证明程序有错,而不是证明程序无错误。 ③、一个...
### 软件测试方法与工具的选择:案例分析 #### 概述 本文探讨了软件测试方法和工具的选择,特别...未来,随着技术的不断发展,软件测试领域也将面临更多的挑战,持续改进测试方法和技术将是保持软件产品质量的关键。
最后,我们来谈一谈缺陷管理在软件测试中的重要性。缺陷管理是一个涉及缺陷报告、分类、严重性和优先级的设定、修复追踪和关闭验证的过程。它能够帮助团队更有效地识别、分析和解决问题,从而提升产品的整体质量。一...
本文将基于《软件测试及Bug管理经验谈》这一主题,深入探讨软件测试的核心原则、Bug管理的重要性和有效实践,以及如何选择适合的Bug管理工具。 #### 清晰的质量概念 软件测试的第一步在于确立明确的质量标准。这...
【软件测试】是软件开发过程中的关键...通过合理规划、执行和改进测试过程,以及选用合适的Bug管理工具,可以显著提高软件开发的质量和效率。在实践中,我们应不断学习和适应新技术,以应对不断变化的软件开发挑战。
本篇将重点探讨"再谈敏捷过程"这一主题,这是微软讲师系列中的第五部分,旨在深入解析敏捷开发方法的实践与应用。通过学习这一系列,我们可以了解到软件开发的多种方法论,包括统一过程(RUP)、敏捷过程、微软解决...
**软件开发过程纵横谈(4): 再谈RUP** 在软件工程领域,Rational Unified Process(RUP)是一个广泛使用的、迭代的、基于构件的软件开发过程框架。本资料包深入探讨了RUP的核心概念、实践以及它如何应用于实际项目中...
在软件开发过程中,风险管理是一个至关重要的环节,特别是在软件测试阶段。软件测试的主要目标是发现并修复软件中的缺陷,确保软件质量和用户满意度。然而,随着软件规模的扩大和功能的复杂化,单纯依赖传统的测试...