这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » [转帖]单元测试简介

共33条 4/4 |‹ 1 2 3 4 跳转至
菜鸟
2006-12-28 02:23:00     打赏
31楼
边开发边测试之二
接上节。代码未编写完,现在继续

前面的代码已删除字符串右边的空格,现在删除左边的空格




左边空格数的计算结果对不对呢?输出来看看,左边有3个空格




执行测试,可以看到,空格数为3,没错




代码基本编写完毕




执行测试,测试通过




添加更多的测试用例




把想到的测试用例都添加上




现在想添加一个测试用例,输入为空指针。空指针输入一般在代码模式下修改(本例中也可以在数据模式中修改)




返回数据模式,把预期输出也改一下




容易想到的用例都建立了,有没有遗漏都不要紧,后面还有白盒覆盖把关呢




执行测试,全部通过




到这里,这个函数的功能就算实现了,这时,最好检查一下代码,看看有没有需要优化的,完成优化再重新运行测试




这里可以优化一下,当左边没空格时,可以不执行这几行代码




再次运行测试




测试还是通过,刚才的修改并没有改变函数的功能




未完成分支覆盖和路径覆盖,完成白盒覆盖后还要执行边界测试,这些操作已在其他章节作了详细的讲述,本节不再重复


菜鸟
2006-12-28 02:23:00     打赏
32楼
10.其他

待测文件列表

待测文件列表用于统计项目中含有未测试函数的文件

只列出含有未测试函数的文件。已完成测试的文件不会出现在这里,可从测试报告中查看测试数据





待测文件列表的第一个用途是排定测试顺序。当项目中未测试的文件较多时,尤其是对已部分或全部完成编码的项目进行单元测试时,应该从底层向上,一个一个文件测试,这样有两个好处:一是降低产生编译错误的可能;二是先测试底层代码易于隔离错误





如何分辩底层代码呢?引用越少,代码越底层





把文件按引用由少到多排序,按顺序进行测试,这是测试大量已存在的代码的要领





待测文件列表的第二个用途是随时找出待测而未测的代码,一方面开发人员或测试人员可以找出遗漏的代码完成测试,另一方面,相关主管或部门也可用以检查测试的完整性





下面介绍一些基本操作





点击选中一个文件





点击这里可以打开当前文件进行测试





相当于从这里打开文件





打开一个文件后,待测文件列表会自动关闭





也可以双击文件名打开文件





这里只列出未测试的函数的数量,具体哪些函数未测试,在打开文件后,可以从函数列表中查看





函数名前面是两个xx的是未测试的函数





函数名前面的两个数字不是00的表示含有错误或测试不完整,下一节会进一步讲述





选中一个文件后,点击这里,可以将文件设为忽略,即不需测试。一个项目中,有一些文件是不需要进行单元测试的,如界面类,可以把它们设为忽略





由于当项目中文件很多时,计算量很大,比较费时,所以待测文件列表不会自动刷新,需要点击这里手动刷新





点击这里打开已忽略的文件列表





已忽略的文件名列出在这里。可以直接把要忽略的文件名填在这里,只填文件名,不加后缀,每行一个文件。还可以使用通配符,例如,*Dlg表示忽略所有文件名以Dlg结尾的文件





如果要测试被忽略的文件,可以把文件名从这里删除





有些函数可能有特殊用途,也可以忽略





把不测试的函数名填在这里,统计时就会忽略





把不测试的函数名填在这里,统计时就会忽略





点击这里关闭待测文件列表


菜鸟
2006-12-28 02:23:00     打赏
33楼
测试报告


函数列表中,函数名前面的两个字符标出了函数的基本测试状态

xx表示未进行过测试




00表示没有失败的测试,并且完成了100%的语句、条件、分支、路径覆盖




第一个字符表示失败的测试的数量,大于9时显示为9




第二个字符表示测试的白盒完整性,数字越大,完整性越差




这里只能看到基本的测试数据,更详细的测试数据需要查看测试报告




所有的数据项都是可以排序的




对于一个项目来说,单元测试的要求是:失败的断言应该全部为0,语句覆盖率、条件覆盖率、分支覆盖率应该全部达到100%,绝大部分函数的路径覆盖达到100%




路径覆盖率未达到100%的测试是不完整的,当程序产生难于查找的错误时,可以将路径覆盖率低的代码作为重点排查对象




这里可以选择要显示的数据。大多数数据都是用于系统内部记录的,对于普通用户来说,浏览缺省的几项数据就可以了




可以把团队中各成员的测试报告集成为一个测试报告




选择要集成的源报告




选择集成后的目的报告路径




点击这里完成合并




选中一个函数后,双击可以测试它




或者点击这里测试选中的函数




测试报告会自动关闭,选中的函数出现在这里,编译运行测试工程即可执行测试


共33条 4/4 |‹ 1 2 3 4 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]