问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

测试覆盖率中如何提高测试覆盖率

发布网友 发布时间:2022-04-23 05:22

我来回答

1个回答

热心网友 时间:2023-09-27 23:14

这篇文章中,主要讨论的是如何提高测试覆盖率的相关问题。其实,提高测试覆盖率最基本,甚至是唯一的办法就是增加测试用例,但是怎样通过增加测试用例而帮助我们“迅速”提高我们的测试覆盖率呢? 代码走查 对于代码的不熟悉造成了我们的代码覆盖率迟迟上不去,我们需要了解到代码里面究竟有多少条件分支,多少怎样的循环,分支和循环向来是导致我们代码覆盖率比较低的原因,另外,是不是存在一些过时的代码,没有运行过代码监测工具的代码中很可能存在一些没有被引用的死代码,而代码走查,尤其是对于覆盖率低的模块的代码走查将有助于你增加相关的用例而提高代码覆盖率。 工具 这里倒不是说有些工具可以帮助你直接提高代码覆盖率,这样的工具至少我还没有就见过。这里提到的工具主要包括两种,一是代码分析工具另外一种就是上篇文章中提到的代码覆盖率工具。代码分析工具可以帮助我们分析代码中的冗余部分,这样可以帮助我们干掉那些总是不可能覆盖到的死函数,有的编译器已经提供了类似的功能。使用代码覆盖率工具则可以帮助我们快速监测代码覆盖率低的地方,这样我们可以快速定位我们测试的薄弱环节,通过代码走查或其他方式可以快速增加用例。一般来讲,某一模块的代码覆盖率从30%提高到50%所需的时间遥远小于从60%提高到80%的时间。 规则 这里所指的规则其实是指一些基本测试方法,如等价类划分,边界值分析。我们有时候需要通过这些手段来逐一检查我们那些方面的测试用例没有考虑到,从而帮助我们增加相关的测试用例。 经验 这个看起来有点像废话,因为一般都知道测试经验丰富有助于测试用例的设计,写出别人没有想到的测试用例。我在这里把这句话提出来的主要意图是告诉大家注意平时的积累,某些时候的灵光一现可能成为日后的一个重要用例。以前的失败教训也可以帮助我们从中学到经验,毕竟“经验是人为其错误而找的代名词”。 注意 有一点我想有必要再次提醒大家:单方面的提高测试覆盖率并不能有效的帮助测试质量的提升,尤其是在代码质量低劣的情况下。就拿一个经典的三角形测试用例来讲,开发人员的代码可能仅仅判断了“两边之和大于第三边”然后就返回“这是三角形”。在测试用例中,我们可能考虑了很多的问题,考虑了输入数据的类型,合法性等等的问题,但是这并无助于增加测试覆盖率。运行这些测试结果是万里江山一片红,记住在你的测试用例没有运行通过的时候考虑测试覆盖率是没有意义的,我目前想到了两条理由:一是这些测试用例可能在代码的中间部分就已经出了问题,所以用例本该覆盖到语句没有覆盖到,这降低了代码覆盖率数据;第二个理由测试用例没有通过可能就如刚才提到的三角形问题中一样,开发人员压根就没有那么多语句给你去覆盖,这时候的代码覆盖率数据显然是没有多大作用的。这也印证了前面文章中提到的“高代码覆盖率比低代码覆盖率更加‘没用’”。 写到这里,我的观点已经表达完毕了。这一系列文章也差不多可以做个了结了。当然我们还留了一些重要的"尾巴"——测试覆盖率工具。在昨天的文章中提到,笔者将实际学习使用一些工具,并将整理相关的资料,当然我是不会爽约的,不过这些内容恐怕要等一段时间才能开始了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
QQ空间代码不用了。怎么回原? 怎样才能把我的QQ空间变回原样啊~~~(我乱用代码的后果~555555~~) 小的的意思是什么 ...中,硫元素的化合价最高的是( )A.SO2B.H2SO4C.H2SD.Na2SO ...中硫元素化合价相同( )A.S、SO2B.SO2、H2SO4C.H2S、H2SO4D.SO3... 下列硫的单质和化合物中,硫元素的化合价是+4的是( )A.SB.SO2C.H2SD... 下列化合物中,硫元素的化合价为+4价的是( )A.H2SB.SO2C.SO3D.H2SO 下列化合物中,硫元素的化合价为+4价的是( )A.CaSO4B.H2SC.Na2SO3D... ...元素的化合价为+4价的是( )A.SO2B.H2SC.SO3D.H2SO 梦幻西游:三界功绩有什么用?原来有这么多用处 EXCEL的VBA编程 功能测试覆盖率每次都增加怎样清零 IC芯片的测试覆盖率是怎么算的 测试覆盖率分为哪几种统计方式?分别是什么? EXCEL中的VBA编程问题-应该很简单 测试覆盖率有哪几种统计方式 求教excel VBA编程 功能覆盖率是什么 excel中的VBA编程 如何运行excel中的vba编程 EXCEL的VBA编程。怎么办? excel VBA 编程 Excel VBA编程 excel:在VBA编程中想利用单元格里面的公式怎么用? excel2013 怎么vba编程 excel的vba编程在什么情况下会用的到呢? excel中的vba是什么意思,如何用 EXECL中如何使用VBA编程 excel VBA编程? EXCEL中用VBA编程难学吗? 软件缺陷度量方法简述 进行软件测试时,哪种情况下可以统计代码覆盖率 代码覆盖率是个什么概念? 请教如何使用dve查看覆盖率 软件测试的冒烟测试一般在哪个阶段测试呢 白盒测试实践。针对给定的被测程序设计测试用例进行测试,达到要求的语句覆盖率和分支覆盖率?_百度问一问 sub是什么意思? verilog code coverage 覆盖率OK的标准是多少 QQ输入法在哪设置? dve看覆盖率时能像verdi一样实现代码跳转吗? 什么是测试需求 QQ输入法在哪?可以在哪弄? QQ输入法怎么找到 ? 水果罐头如何打开? 在哪里可以找到QQ输入法 怎样省力又快速地打开水果罐头? QQ输入法在哪里‘ 密封的水果罐头怎么开 QQ输入法在聊天时为什么看不见选项 QQ拼音的设置在哪找出来呢?