精准测试是现代软件测试面临的一个重大挑战。这个挑战来源于两方面的背景。

  一,软件测试资源有限。如何提高资源利用率,减少资源浪费,有针对性而不是漫无目的地进行软件测试?

  二,软件测试复杂度高。如何克服各种不确定因素,让软件测试真正能够发现并且不误报,不漏报软件缺陷(bug)?

  软件测试是一个系统工程。因此,精准测试并不是单一或孤立的,而是贯穿于软件测试全过程全方位的需求。在实践中,根据内容不同,可以将精准测试至少划分为以下几种类型:

关于精准测试的一点思考_精准测试

  一,精准测试管理。测试管理主要包括对各种资源,包括人员,时间和基础设施的调度,并完成测试计划和测试策略的制定。精准测试管理,要求我们制定合理的测试计划和正确的测试策略,以此指导测试工作执行。

二,精准测试对象。在开展软件测试之前,明确SUT(system under
test,即被测对象)的范围,是首要的事情。SUT划定了测试边界,有利于测试"火力"的集中。另外,在敏捷模式下,由于软件频繁更新,全量测试的成本高,耗时长。这时,只针对新增或修改的代码进行差量测试,是一种更精准更高效的做法。

  三,精准测试过程。测试过程的精准性,主要体现在测试用例的有效性。衡量测试有效性的重要手段是覆盖率,包括代码覆盖率和需求覆盖率。通过度量覆盖率,识别覆盖率不足的地方,并有针对性地进行弥补,是提高用例有效性的推荐做法。另外,当测试发现缺陷时,如何快速准确定位缺陷产生的原因,也是提高测试过程精准性需要考虑的。

  四,精准测试结果。测试是为发现软件缺陷而存在的。测试结果的精准性,衡量的就是测试发现软件缺陷的真实能力。同时,作为硬币的另一面,测试不误报实际上不存在的缺陷,也是要考虑的。

  如需了解更多测试技术信息请关注:深圳多测师软件与技术服务有限公司