首页 > 编程知识 正文

给项目做element覆盖率测试,软件测试覆盖率

时间:2023-05-04 07:56:00 阅读:107461 作者:3635

测试覆盖率,简单来说就是对测试活动覆盖产品代码的指标进行评估。 测试的目的是确认产品代码如期待的那样动作,也可以认为是产品代码的动作方法的说明文件。 此外,测试覆盖率可以视为产品代码质量的间接指标---之所以可以说是间接指标,是因为测试覆盖率评估的是测试代码的质量,而不是产品代码的质量。 代码覆盖率是白盒测试。 因为测试覆盖率是评价产品代码类内部的指标,而不是评价系统界面和规章。 测试覆盖率尤其用于评估测试代码是否覆盖了产品代码的所有路径

1、安装EclEmma coverage有两种方法。 1、在eclipse中单击工具栏上的help--install new software可显示以下屏幕截图

单击Add,弹出以下内容

在name中输入要安装的软件的名称,然后在location中输入以下URL :

http://update.eclemma.org/

然后,中途下一步就可以了。 安装成功后,eclipse工具栏中将添加一个新图标

如果显示上面的屏幕快照,则表示成功

2、第二种方法更简单

在eclipse中点击工具栏的help-- Eclipse marketplace如下图所示

按照红线所示的操作,安装完成后,eclipse工具栏会显示第一个安装步骤的最后一个屏幕截图图标,表示安装成功。

2、coverage首选要测试的Test测试类,单击鼠标右键,右键菜单中增加一个Coverage as选项,然后选择JUNIT。 此时,测试程序将在JUNIT中运行一次。 如果代码中存在多种情况,则可以多次执行。 合并多次统计的测试码复盖,生成复盖率的统计结果吧。 (Java应用程序也可以直接在coverage as上运行。)

实例在百度中看到了一个很好的例子,在这里借一下吧:

public class hello world { publicstaticvoidmain [ ] args } { new hello world (; intrand=(int ) (Math.random ) ) * 100 ); if(rand%2==0) system.out.println('Hello,world! 0 '; }elsesystem.out.println(Hello,world! 1 '; int result=rand % 2==0? rand rand : rand * rand; system.out.println(result ); }

按照上述coverage使用并运行,可以看到以下屏幕截图

绿:代码已执行

黄色:已执行代码部分

红色:代码从未运行

下面的Coverage窗口显示代码测试的覆盖率。 查看代码时,如果获得随机数,认为if不令人满意,可能令人满意,则需要多次运行该代码,多次获得代码覆盖率。 然后,综合条多次得到的覆盖率,得到这种总代码测试的覆盖率。

(其中包括new HelloWorld ) ); 此行代码用于调用类的默认构造函数。 我想每个类都有默认构造函数,只是没有显示的代码。 如果不在此处写入,代码覆盖率将下降,第一行中的public class HelloWorld绿色也会变为红色。)

统计数字如下

箭头是指多次合并运行后的覆盖率百分比

3、总结1 )、coverage可以测试Java APP,也可以测试JUnit测试类

2 )、测试整个项目的代码测试覆盖率可能会很麻烦。 至少需要执行一次所有代码的测试类,并考虑所有代码的执行路径来确保正确。 (是否有测试整个项目的好方法,至少我还不知道--- ) )

3 )请不要忘记测试异常。 清空指针或执行其他异常后的异常代码也会提高代码测试覆盖率

4 )明确了如果代码测试覆盖率高,就可以保证代码的安全性(最低测试没有错误) )。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。