软件测试技术实验一

一、实验内容

     Write a java program for the triangle problem and test the program with Junit.

     Description of triangle problem:

     Function triangle takes three integers a,b,c which are length of triangle sides; calculates whether the triangle is equilateral, isosceles, or scalene.

     编写JAVA程序解决三角形问题,根据给定的三条边的长度,判断三角形是等边三角形,等腰三角形还是一般三角形,并且使用Junit进行测试。这里我增加了直角三角形和等腰直角三角形的判断。

二、实验步骤

1、安装Junit及Hamcrest。

这里直接通过Eclipse导入Junit。新建的项目lab1,鼠标右键,选择属性—JAVA构建路径—Add Library—Junit,然后选择Junit的版本,确定即可。

这个时候,可以看到我们的项目下面已经包含了Junit库,而且Junit下面包含Hamcrest核心包,如图所示:

 

2、安装Eclemma。

下载Eclemma压缩包,解压后将文件夹复制到Eclipse安装目录下的dropins文件夹下,在 Eclipse中,选择帮助—Install new software,点击添加按钮,选择解压后的Eclemma文件夹,确定。

之后重启Eclipse,可以发现图标,表示安装成功。

3、编写代码。

(1)读取用户输入数据。

 

(2)自定义布尔类型函数,判断三角形形状。

判断是否构成三角形:

 

判断是否是等边三角形:

 

判断是否是等腰三角形:

 

判断是否构成直角三角形:

 

(3)在主函数中,调用自定义函数,确定三角形形状。

 

4、使用Junit进行测试。

鼠标右键Triangle.java,新建—Junit测试用例,选择要测试的方法。

 

确定之后,自动生成TriangleTest.java文件:

 

修改测试方法中的代码:

 

运行方法选择Junit测试,运行结果如下:

 

绿色代表运行成功,没有发生错误和故障。

如果改动测试代码,例如修改testTriangle中的代码:

 

此时不能构成三角形,所以会有故障,测试结果如下:

 

5、覆盖率测试

点击图标,选择Triangle Test,结果如下:

 

红色代表未执行,黄色代表条件没有全部执行(通常适用于if语句等),绿色代表执行过了。这里表示四个函数全部运行正确。控制台可以查看更加具体的参数:

 

可以看到TriangleTest.java的覆盖率为100%,所以所有代码基本均有执行。

三、实验结论

      Junit作为一个自动化单元测试工具,能够根据我们的需要,测试类及其接口自动生成该类的单元测试案例,我们只需要输入必要的测试数据就行了,系统运行后自动判断运行是否成功,在软件测试方面可以给予我们极大地帮助。

posted @ 2017-03-11 19:51  ProQianXiao  阅读(1313)  评论(0编辑  收藏  举报