使用Eclipse的JUnit实例
在本节中,我们将展示使用JUnit的一个完整的例子。我们将详细了解如何创建和运行测试,我们将展示如何使用特定的注释和JUnit断言。
1. 初始步骤
让我们创建一个名为 JUnitGuide 的Java项目. 在 src 文件夹, 我们用鼠标右键单击并选择 New -> Package, 创造一个新的包名为: com.yiibai.junit 这里我们将定位类用于测试。 对于测试类,一个很好的做法就是创建专用于测试的一个新的源文件夹,这样的类用于测试以及测试类将在不同的源的文件夹。 为此,右键单击您的项目,选择 New -> Source Folder, 命名新的源文件夹test 并点击 Finish.

或者,可以通过右键点击项目创建一个新的源文件夹,选择Properties -> Java Build Path, 选择标签 Source, 选择 Add Folder -> Create New Folder, 写上名称为test,然后按 Finish。
可以很容易地看到,在项目中有两个源文件夹:

还可以创建一个新的包在新创建的测试文件夹,名称为 com.javacodegeeks.junit, 测试类不会在默认包中,我们已经准备好了,现在就开始吧!
2. 创建Java类用于测试
右键单击src文件夹并创建一个新的Java类称为 FirstDayAtSchool.java. 这个类的公共方法将被测试。
FirstDayAtSchool.java
package com.yiibai.junit;
import java.util.Arrays;
public class FirstDayAtSchool {
public String[] prepareMyBag() {
String[] schoolbag = { "Books", "Notebooks", "Pens" };
System.out.println("My school bag contains: "
+ Arrays.toString(schoolbag));
return schoolbag;
}
public String[] addPencils() {
String[] schoolbag = { "Books", "Notebooks", "Pens", "Pencils" };
System.out.println("Now my school bag contains: "
+ Arrays.toString(schoolbag));
return schoolbag;
}
}
3. 创建和运行JUnit测试案例
要为现有类 FirstDayAtSchool.java 创建一个JUnit测试案例, 在Package Explorer视图上右键单击并选择 New → JUnit Test Case. 更改源文件夹,这样的类将位于 test 源文件夹并确保该标志 New JUnit4 测试选择。


然后点击 Finish. 如果您的项目不包含JUnit库在classpath中,下面的消息会显示成为将JUnit库添加到类路径:

下面,有一个名为:FirstDayAtSchoolTest.java 类,这个测试类的代码如下所示:
FirstDayAtSchool.java
package com.yiibai.junit;
import static org.junit.Assert.*;
import org.junit.Test;
public class FirstDayAtSchoolTest {
FirstDayAtSchool school = new FirstDayAtSchool();
String[] bag1 = { "Books", "Notebooks", "Pens" };
String[] bag2 = { "Books", "Notebooks", "Pens", "Pencils" };
@Test
public void testPrepareMyBag() {
System.out.println("Inside testPrepareMyBag()");
assertArrayEquals(bag1, school.prepareMyBag());
}
@Test
public void testAddPencils() {
System.out.println("Inside testAddPencils()");
assertArrayEquals(bag2, school.addPencils());
}
}
现在,我们可以通过右击运行测试测试类用例,选择 Run As -> JUnit Test.
程序将输出类似如下所示:
Inside testPrepareMyBag()
My school bag contains: [Books, Notebooks, Pens]
Inside testAddPencils()
Now my school bag contains: [Books, Notebooks, Pens, Pencils]
在JUnit视图将没有失败或错误。如果改变其中一个数组,以便它包含超过预期的元素:
String[] bag2 = { "Books", "Notebooks", "Pens", "Pencils", "Rulers"};
我们再次运行测试类,JUnit视图将包含一个错误:

否则,如果我们再次更改其中一个数组,让它包含一个不同的元素:
String[] bag1 = { "Books", "Notebooks", "Rulers" };
我们再次运行测试类,JUnit视图将再一次失败:

使用Eclipse的JUnit实例的更多相关文章
- 基于webdriver的jmeter性能测试-Eclipse+Selenium+JUnit生成jar包
续接 打开eclipse新建java项目,如下图所示: 输入项目名称后点击"完成"按钮,如下图所示: eclipse中新建一个java项目,如下图所示: 添加类库,如下图所示: 在 ...
- eclipse+webservice开发实例
1.參考文献: 1.利用Java编写简单的WebService实例 http://nopainnogain.iteye.com/blog/791525 2.Axis2与Eclipse整合开发Web ...
- (转)Eclipse中junit框架的使用——单元测试
[转]junit浅学笔记一 JUnit是一个回归测试框架(regression testing framework).Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How ...
- Selenium WebDriver TestNg Maven Eclipse java 简单实例
环境准备 前提条件Eclipse 已经安装过 TestNg ,Maven 插件 新建一个普通的java项目 点击右键 configure->convert to Maven Project 之后 ...
- windows下eclipse跑junit报错:CreateProcess error=206
from:http://isuifengfei.iteye.com/blog/1684262 windows下,eclipse中运行junit出现错误提示: Exception occurred ex ...
- FindBugs入门简介(eclipse安装使用实例)
前言:一般公司都会有一些开发规范,但是事实上,简单看那么一两遍并不能养成习惯,或者将这些规范记住.特别的,对于一些新手,写的代码往往会很糟糕.回头看看你一两年前写的代码就会知道,所谓的"糟糕 ...
- Java高级特性 第10节 IDEA和Eclipse整合JUnit测试框架
一.IDEA整合Junit测试框架 1.安装插件 打开File菜单的下拉菜单settings[设置] : 点击左侧Plugins[插件]菜单 在输入框中输入JUnitGenerator 2.0,点击I ...
- Eclipse添加Junit测试
项目上右键,点击build path->add libraaies->选择Junit 附上惨不忍睹的图(eclipse里展开菜单项时老截屏截不好,不知各位有没有好点的解决方案) 2017. ...
- 转:Eclipse+webservice开发实例
原文地址:http://blog.csdn.net/xw13106209/article/details/7049614 1.参考文献: 1.利用Java编写简单的WebService实例 http ...
随机推荐
- [Windows Azure] How to use the Table Storage Service
How to use the Table Storage Service version 1.7 version 2.0 This guide will show you how to perform ...
- android category
本章节翻译自<Beginning-Android-4-Application-Development>,如有翻译不当的地方,敬请指出. 原书购买地址http://www.amazon.co ...
- Spark SQL inferSchema实现原理探微(Python)【转】
使用Spark SQL的基础是“注册”(Register)若干表,表的一个重要组成部分就是模式,Spark SQL提供两种选项供用户选择: (1)applySchema applySche ...
- WebService中方法的重载
阅读目录 一:WebService中的方法是否允许重载? 二:为什么WebService中不支持方法的重载? 三:如何解决WebService中方法的重载? 一:WebService中的方法是否允许重 ...
- python下使用epoll
Reference: http://blog.csdn.net/hehe123456ZXC/article/details/52526670 因为最近想学习如何用epoll写服务器, 于是找到了一篇介 ...
- Python与操作系统有关的模块
Os模块 Python的标准库中的os模块主要涉及普遍的操作系统功能.可以在Linux和Windows下运行,与平台无关.os.sep 可以取代操作系统特定的路径分割符.os.name字符串指示你正在 ...
- Orcale分析函数OVER(PARTITION BY... ORDER BY...)的讲解
顾名思义,PARTITION 中文是分割的意思,ORDER 是排序的意思,所以翻译一下就是先把一组数据按照制定的字段进行分割成各种组,然后组内按照某个字段排序. 以实际案例来说明这个函数的使用, 首先 ...
- 分页用到的子查询sql语句
说明(2017-8-31 23:30:22): 1. 分页用到的子查询sql语句 select * from(select *,ROW_NUMBER() over(order by id)as num ...
- C#学习笔记(1)——快捷键
说明(2017-5-23 09:29:17): 1. 自动排版Ctrl+E,D 2. 注释Ctrl+E,C 3. 取消注释Ctrl+E,U 4. 给字段生成属性Ctrl+R,E 5. 新建类Alt+S ...
- 网络构建入门技术(1)——IP概述
说明(2017-5-10 11:02:31): 0. IP地址的作用,TCP/IP,网络层,包,源IP(哪个设备发出).目的IP(数据要发到哪个设备),每个设备需要唯一的一个IP地址.32个0到32个 ...