软件测试第一次试验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笔记 #06# 自定义简易参数校验框架——EasyValidator
索引 一.校验效果演示 二.校验器定义示例 定义一个最简单的校验器 正则校验器 三.EasyValidator的实现 四.更好的应用姿势——配合注解和面向切面 “参数校验”属于比较无聊但是又非常硬性的 ...
- Docker volume权限导致的几个问题
挂宿主目录的权限问题 由于容器和宿主机共用了一套内核,因此同一个uid对应的容器用户和宿主机用户(哪怕用户名不同)对于内核权限控制而言都是同一个用户.而默认情况下,如果未做特殊配置,容器里的进程默认是 ...
- MySql 8.0 C#连接报错 MySql.Data.MySqlClient.MySqlException (0x80004005): Authentication to host '12.118.224.181' for user 'root' using method 'caching_sha2_password' failed with message: Reading from t
解决方法 在连接字符串后面加上 SslMode=None
- cookie的存入和取出
刚刚开始写页面没多久,因为登录注册写的是个tab切换,所以需要在点击登录的时候跳到登录页面,点击注册的时候跳转到注册页面,自己在网上找了一下,研究了一下cookie方法,现在把它记下来. 存入cook ...
- JS(JavaScript)的进一步了解6(更新中···)
元素的属性 div.attributes 是所有标签属性构成的数据集合 div.classList 是所有class名构成的数组集合 在classList的原型链上看以看到add()和remove() ...
- 20175312 2018-2019-2 《Java程序设计》第8周学习总结
20175312 2018-2019-2 <Java程序设计>第8周学习总结 教材学习内容总结 已依照蓝墨云班课的要求完成了第十章的学习,主要的学习渠道是PPT,和书的课后习题. 总结如下 ...
- shell 的多进程
例子 #!/bin/bash temp_fifo_file=$$.info #以当前进程号,为临时管道取名 mkfifo $temp_fifo_file #创建临时管道 exec <>$t ...
- 从vue源码看props
前言 平时写vue的时候知道props有很多种用法,今天我们来看看vue内部是怎么处理props中那么多的用法的. vue提供的props的用法 1. 数组形式 props: ['name', 'va ...
- 20175317 MyCP(课下作业,必做)
一.题目要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内 ...
- 方差分析 | ANOVA | 原理 | R代码 | 进阶 | one way and two way
原理 比较两组就用t-test,比较三组及以上就用ANOVA.注意:我们默认说的都是one way ANOVA,也就是对group的分类标准只有一个,比如case和control(ABCD多组),tw ...