一、Junit, hamcrest以及eclemma的安装
对于Junit和hamcrest的安装,我并没有从下载Junit和hamcrest相关的jar包然后通过build path导入到项目中,而是使用了eclipse自动导入的Junit4包(因为实验要求Junit以及hamcrest版本正好和eclipse氧气中自动导入的包版本一样),具体步骤如下:
鼠标右键点击工程->点击Properties->Java Build Path->Libraries->Add Library->Junit->Next,选择Junit4后点击Apply and close后,Junit4便导入成功,导入的包信息如下:
接下来安装eclemma,将eclemma.zip解压,在eclipse中点击help->install new software->add后,在弹出窗口中Name处输入eclemma,Location处输入之前eclemma解压后文件夹的绝对路径,之后点击OK,根据提示进行安装即可。
二、测试程序
在工程src目录下新建triangle包,在包中新建一个Triangle类用于编写一个判断三角形形状的方法。
在src同级下创建一个test目录,在该目录下新建一个triangle包(此包名一定要和src中包名一致),在包中新建一个TestCase类用于编写测试用例。
到此,整个项目框架已经搭建好了,成品如下:
现在编写TestCase.java中的代码,编写后的部分代码如下:
@Test标识一个测试用例
@Before标识测试之前的准备工作(如以上代码中,测试前先实例化了一个Triangle类)。
运行单元测试:
右键点击TestCase.java->Run As->Junit Test,结果如下:
通过eclemma进行覆盖测试:
右键点击Triangle.java->Converage As->Converage Configurations(可对覆盖测试进行配置)->Converage结果如下:
Eclemma可以显示此次所有测试用例的覆盖程度:
在代码中,eclemma通过不同的颜色来表示每行代码的执行情况:
绿色代表该行代码全部执行;黄色代表该行代码有部分执行;红色代表该行代码未被执行。
通过加入不同的测试用例,eclemma覆盖测试的覆盖程度也会不同。