前言
在建立高效质量评估模型与测试覆盖度全解析这篇文章中,我们学习了测试覆盖度评估,这篇文章我们学习测试过程的评估。
测试过程评估
测试过程评估可以从测试用例、测试方法、测试投入三方面来分析。
测试用例评估
用例的评估可以通过用例执行率、执行通过率、用例和非用例发现的缺陷比三个指标来进行评估。
测试用例执行率
测试用例执行率是指"已经执行的测试用例数目"和"测试用例总数"的比值。
测试用例执行率可以帮助我们分析测试的全面性,我们希望这个指标在测试过程中能够达到100%,但实际工作中,可能由于环境问题、需求变更、缺陷阻塞等原因导致用例执行率未达到100%,我们就需要有风险意识,对于阻塞缺陷可以要求开发优先解决。
测试执行通过率
测试用例执行通过率是指"测试用例执行结果为'通过'的测试用例数"和"已经执行的测试用例数目"的比值。
一条用例可能会执行很多遍,因此我们可以统计测试用例首次执行通过率以及测试用例累积执行通过率
- 测试用例首次执行通过率:指"第一次执行该测试用例的结果为'通过'的测试用例数"和"已经执行的测试用例数目"的比值。
- 测试用例累积执行通过率:指"测试用例结果为'通过'的测试用例数"和"已经执行的测试用例数目"的比值。
测试用例首次执行通过率可以帮助我们评估提测版本的质量------测试用例首次执行通过率越高,说明开发的版本质量不错;相反,如果开发需要多次修复,最后才能使得测试用例执行通过,说明版本质量可能不高,产品在设计、编码方面可能存在一些问题,即便是修复bug,在修复时引入新bug的风险也会更大一些。
测试用例累积执行通过率可以帮助我们评估产品在发布时的质量。一般说来,测试用例累积执行通过率越高,说明当前的版本质量可能已经达到了基本要求,可以考虑发布。
测试用例和非测试用例发现缺陷比
到了执行用例阶段,一个有经验的测试工程师当然不会只是按照测试用例一条一条执行,测试过程中可能灵光一现,想到了一种可能出问题的场景,然后去测试该场景,果然有问题,此时感觉会很棒。但是这并不意味着,完全探索性测试就是优先的,或者说完全按照用例测试是优秀的,我们需要两者结合,"通过测试用例发现的缺陷"和"发散测试,也就是非测试用例发现的缺陷"的比值能够一个合理的范围内是我们的目标。
比值过低,表示大部分缺陷都是探索性测试发现的,这可能映射出的问题是:
- 测试用例设计存在漏洞
- 探索性测试投入精力过多
比值过高,表示大部分缺陷是通过执行用例发现的,这可能映射出的问题是:
- 缺少发散性思维
- 测试时间不足,没时间探索性测试
测试方法分析
在测试之前,我们就需要根据产品的质量要求,根据测试目标、测试的深度和广度来确定测试方法;在测试设计和测试执行中跟进,保证各个特性使用的测试方法和测试策略相符,并通过缺陷来确认测试策略是否合适,是否需要调整测试策略。
1、分析测试设计是否和测试策略中的测试方法符合,可以通过测试设计的过程跟踪、测试评审等方式去跟踪和分析。
2、分析测试执行时的测试方法是否符合测试策略,可以通过测试执行时的日报、周报,测试用例执行情况等方式去跟踪和分析。
3、通过缺陷分析来确定测试策略是否需要调整,主要是对缺陷进行缺陷触发因素分析
测试投入分析
主要分析测试人员的安排以及工作量、工时情况。我们也可以记录一个表格,针对不同的功能模块,投入了人力、人力对应的能力、投入到哪个阶段,用了多少工时。如果发现与测试策略不符,就需要考虑如何进行调整、优化。
最后
这篇内容阐述了测试过程的评估,测试用例的评估还是比较容易实施的,测试方法的分析其实比较抽象,需要一定的经验,测试投入的分析可能针对一些中小型公司很难实施,有可能只有一个测试工程师,想多投入人力都没有条件,实在项目紧急,只能分一些用例让研发测试,但这样产生的问题就是,研发可能缺少发散性测试,只为了完成任务而完成任务,这样质量真的堪忧。