• 0
  • 0
分享
  • 如何度量软件测试质量?——软件测试圈
  • 饼干 2024-10-30 15:25:26 字数 2384 阅读 228 收藏 0

  想必大家都有这样被老板灵魂发问的经历吧。

  1. 当你负责的项目按时交付发布后,你老板问项目的测试质量怎么样啊?

  2. 当你测试的项目上线后有用户曝出使用缺陷,你老板问你这个缺陷怎么没有测试出来呢?

  如果测试工程师将测试工作理解为测试用例设计、测试执行,那么你大概率回答不好老板的发问,给不到老板想要的答案。

  测试工程师作为项目质量把关者, 是产品质量保障至关重要的一环,测试设计和执行只是其职责的一部分,殊不知,测试质量度量也是测试工作尤为重要的一环。测试质量度量的范围不仅限于测试角色,也包括开发角色,甚至是产品角色。因为产品质量不是测试同学测出来的,而是产研测三方共同努力“测试”的结果。

  度量是一种工具,就像一把尺子,衡量项目测试质量的好坏,哪些地方做的好,哪些地方还需要改进。

  下面就分享下测试工程师如何度量软件测试质量,我将其分为三个过程:

  · 缺陷规范

  · 缺陷管理

  · 质量度量

  1 缺陷规范

  软件缺陷可以是编码中的缺陷,也可以是软件需求设计中的缺陷,最终都会导致软件程序运行不符合用户预期需求 的结果。有过测试经验的小伙伴,大都接触过比较流行的缺陷管理工具Jira,用于记录测试过程发现的缺陷。想要做好质量度量,就一定要有被度量的元数据(缺陷数据),而缺陷自身被给予的特征维度越多,则越能将度量工作做的更细致,也能度量出更多的结果。而缺陷规范,可以简单理解为给缺陷 贴不同维度标签(要素)。

  1.1 缺陷要素

  如上所述,理论上缺陷要素越多则度量的结果越精确,但通常会包含以下基本内容,如描述、发现缺陷的日期、发现缺陷的测试人员的名字、修复缺陷的开发人员的名字等。

  ·缺陷ID:唯一的缺陷ID,可以根据该ID追踪缺陷

  · 缺陷状态:一般情况下缺陷状态有:“打开/重新打开”、“待解决”、“不解决(拒绝)”、“已解决”、“已修复”、“延期修复”、“关闭”等。英文描述:Open/Reopen、un-solved、Won’t Fix、Resolved、Fixed、Deferred、Close。

  · 缺陷标题:描述缺陷的标题

  · 缺陷标签:用于缺陷归类

  · 缺陷的详细描述:对缺陷的详细描述,缺陷如何复现的步骤等等,之所以把这项单独列出来,是因为对缺陷描述的详细程度直接影响开发人员对缺陷的修改,描述应该尽可能详细。

  · 缺陷的严重程度:描述缺陷的严重程度,一般分为“致命(Critical)”、“严重(Major)”、“一般(Minior)”、“轻微(Trival)”和“建议修改(Suggestion)”等五种。

  · 缺陷的紧急程度:描述缺陷的紧急程度,用P0-4级来定义,4是优先级最低的等级,0级是优先级最高的等级。缺陷的紧急程度与严重程度虽然是不一样的,但两者密切相关,往往的越是严重,就越是紧急;但是也存在一些情况,虽然严重等级不高,但是需要紧急修复。

  · 缺陷提交人:缺陷提交人的名字

  · 缺陷所属项目/模块:缺陷所属的项目和模块,最好能较精确的定位至模块

  · 缺陷解决人:最终解决缺陷的人

  · 缺陷处理结果描述:对处理结果的描述,如果对代码进行了修改,要求在此处体现出修改

  · 必要的附件:对于某些文字很难表达清楚的缺陷,使用图片等附件是必要的。

  2 缺陷管理

  缺陷管理是一个缺陷从被发现到缺陷修复的系统过程,也叫缺陷生命周期管理。缺陷管理周期包含以下阶段:

  1)发现缺陷

  2)记录缺陷

  3)修复缺陷

  4)验证缺陷

  5)Reopen/关闭缺陷

  6)统计缺陷

2-1.png

  2.1 发现缺陷

  在发现阶段,项目团队必须在项目交付之前,尽可能多地发现缺陷。一个缺陷被发现且被开发认可,缺陷就变成可接受的状态,等待开发修复。

2-2.png

  2.2 记录缺陷

  发现缺陷则利用缺陷管理工作记录缺陷,缺陷描述务必详细,这样能降低开发“理解”/复现缺陷的成本。然后要对缺陷进行分类,例如缺陷严重程度分类有助于软件开发人员对其任务进行优先排序,开发人员优先修复那些非常严重的缺陷。

2-3.png

  下面来做个小测验:

2-4.png

  2.3 修复缺陷

  修复缺陷过程开始于将缺陷提交给开发人员,然后开发人员根据优先级安排缺陷的修复,最后开发人员向测试同学同步修复结果。借助测试缺陷管理工具,例如Jira,可以管理缺陷的整个生命周期的活动,大大提升测试管理效率。

2-5.png

  · 指派开发人员。指派给开发人员或其他技术人员进行修复,并将缺陷状态改为响应。

  · 安排修复。他们将根据缺陷的优先级,创建一个修复这些缺陷的时间表。

  · 修复缺陷。在开发团队修复缺陷的同时,测试同学根据上述时间表跟踪缺陷的修复过程。

  · 同步修复结果。修复缺陷后,开发将缺陷状态设置成fixed。

  2.4 验证缺陷

  在开发团队修复并报告了缺陷后,测试团队会验证缺陷是否真的被修复了。

  2.5 Reopen/关闭缺陷

  一旦一个缺陷被解决和验证,该缺陷的状态就会被改变为关闭。如果没有,你要重新打开(reopen)缺陷,再次提交给开发修复。

  2.6 统计缺陷

  软件测试中的统计缺陷是将缺陷按照要素进行数据归类,用于缺陷度量。

  3 质量度量

  强调一点,缺陷度量不仅仅发生于测试结束后,而是伴随整个测试过程的。那么,测试质量度量指标有哪些呢?

  汇总如下,可以看出软件测试度量范围不仅限于测试角色,还包括开发角色。

2-6.png

  以缺陷拒绝率为例,假如测试提出84个缺陷,开发测试双方认定其中20个不属于缺陷, 你可以计算出缺陷拒绝率是20/84=0.238(23.8 %)。通常来说,缺陷拒绝率值越小,测试的质量就越高。


作者:QualityAssurance21    

来源:http://www.51testing.com/html/99/n-7796399.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   据 404Media.co 报道,微软的 Skype 移动应用存在一个严重的漏洞,可能导致黑客通过发送一个链接就能检测到用户的 IP 地址。  该漏洞只需利用 Skype 的文本消息功能发送一个链接,无需用户点击该链接,就能暴露用户的 IP 地址。  这个漏洞最初是由一位化名为“Yossi”的独立安全研究员发现的,文章描述了利用这个漏洞的过程:  文章补充说,这个问题只影响 Skype 的移动应用,而不影响桌面版的 Skype。出于安全原因,文章没有透露黑客方面如何利用这个漏洞的细节,但是文章称这个漏洞“非常容易被利用,只涉及改变链接相关的某个参数”。  Yossi 把他发现的漏洞信息发送...
            0 0 857
            分享
          •   供应链分析师郭明錤(Ming-Chi Kuo)今天表示,苹果公司明年不再计划在 iPhone 17 机型的逻辑板上使用树脂涂层铜。郭明錤称,树脂涂层铜未能满足苹果的"高质量要求",导致该公司放弃了在 iPhone 17 机型上采用这种材料的计划。  目前还不清楚苹果是否会在 iPhone 18 机型或更晚的机型上重新考虑树脂涂层铜,但从目前的情况来看,这种材料至少还有几年的时间才能应用到 iPhone 上。  树脂涂层铜是一层涂有环氧树脂等树脂的薄铜箔,这种材料可以使逻辑板更薄,从而为未来 iPhone 的其他组件和传感器提供更大的内部空间。  还有传言称,今年至少有一...
            0 0 645
            分享
          •   纵观软件测试行业的发展史,相信很多人都知道它是伴随着“软件”而出现的。  在早期软件开发的过程中,“测试”的含义其实是比较狭窄的,测试这一行为也完全由开发人员执行,几乎等同于“调试”工作。  到了上世纪80年代,IT行业得到了大力的发展,“软件”也趋向于大型化、高复杂度,这个时候“软件测试”才逐渐形成了自己的理论基础和实用技术。  从上世纪90年代开始,软件行业的发展形势可谓迅猛。随着软件行业规模变大,“软件测试”活动也变得需要更多的时间和成本了。  又经过20年的持续发展,“软件测试”行业已经有了自己的行业标准(IEEE/ANSI ),也经历了手工测试到自动化测试的技术变革,更是形成了自...
            0 1 1102
            分享
          • 国内软件业快速发展的最近十年,软件开发工程师的人数和职业水平得到了很大的提高,当前国内高水平的软件开发工程师的数量已经可以和许多软件业发达的国家相比。但是,软件测试人才严重缺乏,尤其是既懂质量管理,又懂测试技术的软件测试工程师,更是凤毛麟角。现阶段软件测试工程师的晋升通道有两种:一种是专业通道,成长为高级软件测试工程师或专职的性能测试工程师、自动化测试工程师、白盒测试工程师,这时能够独立测试很多软件,甚至可以成为软件测试架构设计师,当然随着技术的积累也可以转做项目管理;第二种是管理通道,从测试工程师到组长(Lead),再到测试经理(Manager),以至更高的职位。测试工程师晋升通道如图3-6...
            0 0 1058
            分享
          • 前几天推送《简历中千万不要出现的 3 个问题》后,不少朋友告诉我,这几个提醒太关键太及时太有用了,但是,这么做只是避免简历被轻易涮掉,并没有提高简历通过率呀。确实是这样,那怎样才能增加简历通过率呢?今天我就从筛简历的角度聊聊,简历中突出哪些软技能时,更有可能赢得面试机会。我大概总结了一下,可以突出如下 3 点:突出自己的主动性;突出自己解决问题的能力;突出自己的学习能力;下面我就每一点分别展开说一下。一、突出自己的主动性《现代汉语词典》中解释,「主动」就是「不待外力推动而行动」,那么「主动性」就是这种主动行动的具体体现。举个例子。张三在他的「专业技能」一栏写了:自学 Python 半年,目前为...
            2 6 3007
            分享
      • 51testing软件测试圈微信