`
Lincoln
  • 浏览: 81318 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多
JUnit 入门
1.JUnit
软件测试在软件投入使用前,对软件需求分析,设计规格说和编码进行最后的审查,这是软件质量保证的关键步骤。大量的数据表明,在软件测试的工作量往往占软件开发总工作的40%以上,而且成本不菲。所以软件测试砸整个开发过程中具有举足轻重的地位。

软件测试在软件开发过程中跨越了两个阶段:通常在编写每一个模块之后就要做必要的测试,这就叫单元测试,编码和单元测试属于软件开发过程中的同一阶段。在这个阶段之后,需要对软件系统进行各种综合的测试,即综合测试,他属于软件工程的测试阶段。

单元测试简介
软件测试是软件开发的重要组成部分但是很多开发者去忽略了这一点。他们认为测试应该有专门的测试人员来做。因为他们对自己写出的代码很“了解”,但他们却忽视了重要的一点,如果成员不对自己的代码进行测试,他们怎么知道自己写的代码会按照预期的方式运行呢?

单元测试就是开发者写一段测试代码来验证自己编写的一段代码运行是否正确。一般来说,一个单元测试用来判定在给定条件写某个函数的行为。例如,如果项测试一个类型的某个函数返回的对象是否是原来预期的对象。

那么为什么要进行单元测试呢?当编写完一段代码之后,系统会进行变异,然后开始运行。如果编译都没有通过,运行就更不可能了。
如果编译通过只能说明没有语法错误,但却无法保证这段代码在任何时候,都会按照自己的预期结果运行。所有的这些问题单元测试都可以解决。编写单元测试可以验证自己编写的代码是否按照预期运行。总之,单元测试可以使开发者的工作变得越来越轻松。

1. JUnit简介
JUnit的特性
JUnit是一个开放源代码的Java测试框架,用在编写和运行可重复的测试上。他是单元测试框架体系xUnit的一个实例,包括如下特性。
(1).用于测试期望结果的断言。
(2)用于共享共同测试数据的测试工具。
(3)用于方便地组织和运行测试的测试套件。
(4)星图形和文本的测试运行器。

JUnit的优点
(1) 可以使测试代码与产品代码分开。这个有利于代码的打包发布和测试代码的管理。
(2) 针对某一个类的测试代码,通过较少的改动使可以应用另一个类的测试。JUnit提供了一个编写测试类的框架,使测试代码的编写更加方便。
(3) 易于集成程序中的构建过程中。JUnit和Ant的结合开可以实施增量开发。
(4) JUnit的源代码是公开的,故而可以进行二次开发。
(5) JUnit具有很强的扩展性,可以方便地对JUnit进行扩展。

JUnit框架
JUnit一共7个包,其核心的包是junit.framework 和 junit.runner. framework包负责整个测试对象的构建,runner负责测试驱动。JUnit有四个重要的类,他们分别是TestSuite,TestCase,TestResult和TestRunner。另外,JUnit还包括Test接口和TestListenter类,前几个类属于junit.framework包,后一个类在不同的环境下是不同的。下面来简单介绍一些这几个类。

TestResult
TestResult 负责收集TestCase所执行的结果。它将结果分类,分为客户可预测的错误和没有预测的错误。它还将测试结果转发到TestListener处理。

TestRunner
TestRunner 是客户对象调用的起点,它负责对整个测试过程进行跟踪。它能够显示测试结果,并且报告测试的进度。

TestListenter
TestListenter 包含4个方法:addError()  addFailuer()  startTest() 和 endTest()。它是对测试结果的处理和对测试驱动过程的工作特征进行提取。

Test接口
Test 接口用来测试和收集测试结果。Test接口采用了Composite设计模式,它是单独的测试用例, 聚合的测试模式以及测试扩展的共同接口。它的countTestCase方法用来统计本次测试有多少个TestCase。在另一个方法run()中,参数TestResult作为测试结果的事例,run方法用于执行本次测试。

TestCase抽象类
TestCase抽象类用来定义测试中的固定方法。TestCase是Test接口的抽象实现,由于TestCase是一个抽象类,因此不能被实例化,只能被继承。其构造函数可以根据输入的测试名称来创建一个测试用例,提供测试名的目的在于方便测试失败是查找失败的测试用例。编写TestCase的子类用于测试时,需要注意以下事项。
(1) 一次测试纸测试一个对象,这样容易定位出错的位置。对于一个TestCase,只测试一个对象,一个测试方法只测试一个对象中的方法。
(2) 最好在assert函数中给出失败的原因,这样有助于查错。
(3) 在setUp和tearDown中的代码不应该与测试有关的,而应是全局相关的。

TestSuite 测试套件类
TestSuite 类负责组装多个TestCase。测试中可能包括了对测试类的多个测试,而每个测试可能就是一个测试用例,TestSuite负责收集组合这些测试,以便可以在一个测试中完成全部测试。

分享到:
评论
2 楼 gongmingwind 2009-02-19  
来点实际的!太理论了.
1 楼 lf_86 2009-01-10  
比较概括,但有了一定概念

相关推荐

    Junit学习笔记~

    Junit学习笔记,希望有用~~~~~~~~~~~~~~~~~~~~~~

    Junit学习笔记

    通过这份Junit学习笔记,你可以掌握单元测试的基本思想,熟练运用JUnit进行代码质量的保障。在实际开发中,单元测试不仅能帮助找出错误,还能在重构时提供安全保障,提高代码质量。不断学习和实践,你会发现自己在...

    JUnit学习笔记之NetBeans入门篇

    本篇笔记将带你进入JUnit与NetBeans的结合使用世界,让你在NetBeans中更高效地进行单元测试。 首先,我们需要安装JUnit库到NetBeans。在NetBeans中,打开“工具”菜单,选择“库”,然后点击“新建库”。在弹出的...

    JUnit3.X和4.X学习记录及用例

    总之,这个学习资源将带你深入理解JUnit的基本概念和高级特性,通过阅读`JUnit学习笔记.txt`并动手实践其中的示例,你将能熟练掌握如何利用JUnit3和JUnit4进行有效的单元测试,从而提升代码质量和项目稳定性。

    Junit学习.rar

    这个“Junit学习.rar”压缩包显然包含了关于JUnit从3.8到4.9版本的学习资料,包括可能的操作手册、教程文档以及个人的学习笔记。以下是基于这些资源可能涵盖的一些关键知识点: 1. **JUnit基础知识**:了解JUnit的...

    junit个人学习笔记

    现在的版本都4.3.1,3.8.1的感觉好象不好找,虽然www.junit.org能够找到,但对我们这种英语不好的来说,还是不好找,再说了,现在好多的教程都是以3.8.1来写的,所以在这里把我找到的3.8.1传上来供大家以后下载 博文链接:...

    Junit 4.0 学习笔记

    《Junit 4.0 学习笔记》 JUnit 是一个广泛使用的Java编程语言的单元测试框架,尤其在敏捷开发和持续集成环境中扮演着至关重要的角色。本文将深入探讨JUnit 4.0版本的主要特性、核心概念以及如何有效利用它进行单元...

    JUnit4学习笔记

    法在每个测试方法执行之后都要执行一次,相当于 JUnit3 中的 tearDown 方法,用于清理测试环境。@Test:这是 JUnit4 中的核心元数据,用于标记测试方法。当 JUnit4 运行测试时,会查找所有带有 @Test 注解的方法,并...

    Junit良葛格学习笔记

    "Junit良葛格学习笔记"很可能包含了一系列关于如何有效利用JUnit进行测试的教程和示例。下面将详细阐述JUnit的核心概念、功能以及在实际开发中的应用。 1. **JUnit简介**: JUnit是由Ernst Leiss和Kent Beck开发的...

    北京圣思园 junit全套笔记及源码

    在“北京圣思园 junit 全套笔记及源码”中,你将深入学习 JUnit 的各种功能和最佳实践。以下是一些关键知识点: 1. **安装与配置**:首先,你需要了解如何在你的开发环境中安装 JUnit,通常是通过 Maven 或 Gradle ...

    Junit4学习笔记—入门篇.pdf

    ### JUnit4学习笔记——入门篇 #### 一、配置MyEclipse在项目中引入JUnit4.jar包 在使用JUnit4进行单元测试之前,首先需要确保开发环境已正确配置JUnit库。对于使用MyEclipse IDE的开发者来说,可以通过以下步骤...

    JUnit入门笔记~

    通过学习和实践这些基本知识,你将能够熟练运用JUnit进行单元测试,提升代码质量和开发效率。在阅读提供的"笔记_JUnit.docx"文档时,你会找到更详细的信息,包括具体示例和进阶话题,帮助你深入理解JUnit的使用。

    林信良java学习笔记

    林信良学习笔记(内容):ajax学习笔记,算法学习笔记,计算机图形学,C++学习笔记,设计模式,Hibernate学习笔记,Java学习笔记,JSF,JSP/Servlet,JUnit,Spring,Struts等

    Junit In Action 学习笔记----下载不扣分,回帖加1分,童叟无欺,欢迎下载

    第一部分:Junit精粹 第1章:带着你为一个简单的对象创建测试。在此过程中介绍了单元测试的好处,理念,和方法。 随着测试越来越复杂,我们把用junit创建更好的测试方案来展现。 第2章:进一步深入研究了Junit的...

    JUnit知识点滴集合笔记

    JUnit知识点滴集合笔记,这个包里面包括了好几篇文档,一定会让你对JUNIT有一个全新的认识。 JUnit 4 抢先看.doc JUnit in java 真正的测试用例实战.doc JUnit起步.doc junit实现过程.doc JUnit中如何测试异常.doc ...

    Java学习笔记(源码)

    【Java学习笔记(源码)】是一份详细记录了Java编程语言学习过程的资源集合,包含实际的源代码示例。这份笔记旨在帮助初学者和有一定经验的开发者深入理解和掌握Java语言的核心概念、语法以及常见应用。以下是笔记中...

Global site tag (gtag.js) - Google Analytics