在本节中,我们将展示使用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实例的更多相关文章

  1. 基于webdriver的jmeter性能测试-Eclipse+Selenium+JUnit生成jar包

    续接 打开eclipse新建java项目,如下图所示: 输入项目名称后点击"完成"按钮,如下图所示: eclipse中新建一个java项目,如下图所示: 添加类库,如下图所示: 在 ...

  2. eclipse+webservice开发实例

    1.參考文献: 1.利用Java编写简单的WebService实例  http://nopainnogain.iteye.com/blog/791525 2.Axis2与Eclipse整合开发Web ...

  3. (转)Eclipse中junit框架的使用——单元测试

    [转]junit浅学笔记一 JUnit是一个回归测试框架(regression testing framework).Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How ...

  4. Selenium WebDriver TestNg Maven Eclipse java 简单实例

    环境准备 前提条件Eclipse 已经安装过 TestNg ,Maven 插件 新建一个普通的java项目 点击右键 configure->convert to Maven Project 之后 ...

  5. windows下eclipse跑junit报错:CreateProcess error=206

    from:http://isuifengfei.iteye.com/blog/1684262 windows下,eclipse中运行junit出现错误提示: Exception occurred ex ...

  6. FindBugs入门简介(eclipse安装使用实例)

    前言:一般公司都会有一些开发规范,但是事实上,简单看那么一两遍并不能养成习惯,或者将这些规范记住.特别的,对于一些新手,写的代码往往会很糟糕.回头看看你一两年前写的代码就会知道,所谓的"糟糕 ...

  7. Java高级特性 第10节 IDEA和Eclipse整合JUnit测试框架

    一.IDEA整合Junit测试框架 1.安装插件 打开File菜单的下拉菜单settings[设置] : 点击左侧Plugins[插件]菜单 在输入框中输入JUnitGenerator 2.0,点击I ...

  8. Eclipse添加Junit测试

    项目上右键,点击build path->add libraaies->选择Junit 附上惨不忍睹的图(eclipse里展开菜单项时老截屏截不好,不知各位有没有好点的解决方案) 2017. ...

  9. 转:Eclipse+webservice开发实例

    原文地址:http://blog.csdn.net/xw13106209/article/details/7049614 1.参考文献: 1.利用Java编写简单的WebService实例  http ...

随机推荐

  1. [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 ...

  2. android category

    本章节翻译自<Beginning-Android-4-Application-Development>,如有翻译不当的地方,敬请指出. 原书购买地址http://www.amazon.co ...

  3. Spark SQL inferSchema实现原理探微(Python)【转】

    使用Spark SQL的基础是“注册”(Register)若干表,表的一个重要组成部分就是模式,Spark SQL提供两种选项供用户选择:   (1)applySchema     applySche ...

  4. WebService中方法的重载

    阅读目录 一:WebService中的方法是否允许重载? 二:为什么WebService中不支持方法的重载? 三:如何解决WebService中方法的重载? 一:WebService中的方法是否允许重 ...

  5. python下使用epoll

    Reference: http://blog.csdn.net/hehe123456ZXC/article/details/52526670 因为最近想学习如何用epoll写服务器, 于是找到了一篇介 ...

  6. Python与操作系统有关的模块

    Os模块 Python的标准库中的os模块主要涉及普遍的操作系统功能.可以在Linux和Windows下运行,与平台无关.os.sep 可以取代操作系统特定的路径分割符.os.name字符串指示你正在 ...

  7. Orcale分析函数OVER(PARTITION BY... ORDER BY...)的讲解

    顾名思义,PARTITION 中文是分割的意思,ORDER 是排序的意思,所以翻译一下就是先把一组数据按照制定的字段进行分割成各种组,然后组内按照某个字段排序. 以实际案例来说明这个函数的使用, 首先 ...

  8. 分页用到的子查询sql语句

    说明(2017-8-31 23:30:22): 1. 分页用到的子查询sql语句 select * from(select *,ROW_NUMBER() over(order by id)as num ...

  9. 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 ...

  10. 网络构建入门技术(1)——IP概述

    说明(2017-5-10 11:02:31): 0. IP地址的作用,TCP/IP,网络层,包,源IP(哪个设备发出).目的IP(数据要发到哪个设备),每个设备需要唯一的一个IP地址.32个0到32个 ...