软件测试第一次试验JUnit
一、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覆盖测试的覆盖程度也会不同。
软件测试第一次试验JUnit的更多相关文章
- 软件测试:lab1.Junit and Eclemma
软件测试:lab1.Junit and Eclemma Task: Install Junit(4.12), Hamcrest(1.3) with Eclipse Install Eclemma wi ...
- 软件测试技术第一次试验之——JUnit的安装与使用
众所周知,在一个大型的软件项目中,测试是必不可少的.传统的测试方法往往要自己编写测试函数再结合测试用例进行验证,这样会显得比较繁琐.所以我们可以使用JUnit框架进行测试. 使用junit的好处就是这 ...
- Java第一次试验
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1352 姓名:朱国庆 学号:20135237 成绩: ...
- 软件测试Lab 1 Junit and Eclemma
首先安装eclipse 然后下载hamcrest-core-1.3.jar,下载地址:http://mvnrepository.com/artifact/org.hamcrest/hamcrest-c ...
- 软件测试入门 1—— junit 单元测试
一.实验主要内容: 1. 2.EclEmma安装 见: http://www.cnblogs.com/1995hxt/p/5291465.html 二.对与 Junit 安装,使用 maven管理项目 ...
- SQL语句修改字段类型与第一次SQLServer试验解答
SQL语句修改字段类型 mysql中 alert table name modify column name type; 例子:修改user表中的name属性类型为varchar(50) alert ...
- JUnit学习
很早以前就知道JUnit也知道它用来做单元测试.今天突然又想到还是要学一下这个JUnit,不然说出去不知道怎么用JUnit做单元测试……作为一个程序员怪丢人的.第一篇JUnit不算是一个总结性的文章, ...
- The import junit cannot be resolved解决问题
第一次安装Junit,配置环境之后发现添加语句import junit.framework.TestCase; 编译错误 解决:项目右键Properties->Java Build Path-& ...
- 20165221 2017-2018-2《Java程序设计》课程总结
20165221 2017-2018-2<Java程序设计>课程总结 一.作业连接汇总 每周作业链接 预备作业一: 20165221我期望的师生关系 预备作业二: 20165221学习基础 ...
随机推荐
- Java运行环境
Java 开发环境配置 在本章节中我们将为大家介绍如何搭建Java开发环境. Windows 上安装开发环境 Linux 上安装开发环境 安装 Eclipse 运行 Java Cloud Studio ...
- iOS日历控件
项目需要,前一阵子重构了下iPad工程,添加了一个滚动无缝日历. 当时没有头绪,网上找了一个源码改吧改吧就上线了(参考链接),这个功能很多而且流畅性也特别好,推荐不会写的可以参考下. 这几天,活不太忙 ...
- varnish 相关说明
一.关于Varnish Varnish 是一款高性能且开源的反向代理服务器和 HTTP 加速器,其采用全新的软件体系机构,和现在的硬件体系紧密配合,与传统的 squid 相比,varnish 具有性能 ...
- Java第一次实训课的作业
1.圆的面积 2.加密数字 3.奇偶数
- mysqli_query($conn, $sql)的返回值类型
SQL语句的分类: DDL: Data Define Language,数据定义语言——定义列 CREATE / DROP / ALTER / TRUNCATE DML: Data Manipulat ...
- 图像旋转、伸缩的自写matlab实现
一.图像的旋转 今天的代码不是自己写的,缺少一些时间.但是认认真真推导了一下旋转的公式,代码的思想与原博博主一致,致敬! 愚以为,自己来实现图像旋转算法的关键点有二:其一,确定旋转后的图像边界.其二, ...
- orm 复习
day70 2018-05-14 1. 内容回顾 1. ORM 1. ORM常用字段和属性 1. AutoField(primary_key=True) 2. CharField(max_length ...
- javascript的对象内容对比
vue是这样对比的 function looseEqual (a, b) { if (a === b) return true const isObjectA = isObject(a) const ...
- linux服务基础(三)之Httpd2.4配置
httpd-2.4 新特性: . MPM支持运行DSO机制,以模块形式按需加载 . 支持event MPM . 支持异步读写 . 支持每模块及每个目录分别使用各自的日志级别 . 每请求配置 <I ...
- Autowired(required=true)
问题原因 没有实现类的接口上添加了@Autowired注解 问题解决 删掉@Autowired注解 bug详情 Description: Field userDAO in com.crab.servi ...