`
teamojiao
  • 浏览: 350313 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

单元测试三叉戟—JUNIT,DBUNIT,UNITILS

阅读更多

Java 单元测试领域, JUNIT 一直各位开发人员和测试人员的最佳选择,它不仅提供了很多标准的 API ,同时很多 IDE 也对它提供了运行环境支持。特别是 JUNIT4 以后,引入了 Java annotation 的方式,进一步规范了测试脚本的结构,使测试脚本在原有的框架下更加灵活。

DBUNIT 是一款基于 JAVA 的数据库维护工具,让在单元测试中使数据库中的数据维护透明化成为可能。

UNITILS 是一款单元测试的维护工具,它可以把单元测试中用到到的资源采用 JAVA ANNOTATION 的方式统一管理起来,最大限度的减少测试脚本中硬编码的数量,降低编写测试脚本的难度。

我们在经过一段时间的实践以后,把这三个工具有机的结合起来,以 JUNIT 为整个测试的基础框架,采用 DBUNIT 为自动管理数据库的工具,以 EXCEL 为数据载体通过 POI 加载数据,最后通过 UNITILS ANNOTATION 机制把整个数据以及 EXCEL IO 过程透明化,同时也可以把 SPRING 容器中已经初始化好的 BEAN 透明地取出,仅仅把各种 annotation 的接口暴露给脚本开发者,使脚本开发者采用一个 annotation 符号就可以完成加载删除数据、初始化 spring bean 等硬编码中几行甚者是几行代码的工作。

整个单元测试的运行机理如下图所示:

 


由于官方版本的 Unitils 是不支持访问呢 EXCEL 的,因此需要编写插件调用 DBUNIT API 使其支持 EXCLE 格式数据,另外如果远程数据库中需要用到的表无主键, DBUNIT 会抛出无法找到主键的一场,这无法适应现实数据库的需要,因此需要修改 DBUNIT 的源码,使其支持在本地文件设置虚拟主键,这样就使整个数据准备策略觉有很大的灵活性, DBUNIT 访问数据库方式如下图所示:

 


 

这就是整个单元测试框架,在加上现有的持续集成技术,就形成了一个相对完整的一个可持续集成的单元测试体系。

当然其中还有很多是我们需要改进的地方,比如:数据验证技术过于依赖与硬编码; UNITILS 无法支持多库数据操作等等,但是我始终相信,技术无止境,只要我们保持足够的信心和激情,我们的可持续集成的单元测试体系不仅会为公司做出更大贡献,更可以成为业界一颗璀璨的明星。

  • 大小: 18.8 KB
  • 大小: 22.8 KB
分享到:
评论

相关推荐

    单元测试JUnit4和DbUnit

    为了更好地学习和实践这些概念,文档"单元测试JUnit4和DbUnit.doc"可能包含了详细的步骤和示例代码,而"dbunitAndJunit4"和"junit4"这两个文件夹可能包含了相关的练习项目或者源码,通过阅读和运行这些代码,可以...

    单元测试工具Junit的简单使用

    ### 单元测试工具Junit的简单使用 #### 一、引言 随着软件开发规模的不断扩大和技术的日益复杂化,软件质量成为了决定项目成败的关键因素之一。单元测试作为提高软件质量的重要手段,在软件开发过程中扮演着至关...

    junit单元测试jar包集

    这里提到的四个文件是Java开发中常用的单元测试框架和库,分别是JUnit、DBUnit、Unitils和Mockito。让我们逐一深入探讨它们的功能和使用方法。 **JUnit** 是Java领域中最广泛使用的单元测试框架,这里的`junit-4.11...

    单元测试-junit.jar

    单元测试-junit.jar单元测试-junit.jar单元测试-junit.jar

    Java单元测试之JUnit

    JUnit作为Java领域中最常用的单元测试框架,为开发者提供了简单、高效的测试工具。在这个"Java单元测试之JUnit"的代码实践中,我们将深入探讨JUnit的基本使用方法以及它在Java项目中的应用。 首先,JUnit是一个开源...

    单元测试利器JUnit4

    JUnit4作为Java平台上最流行的单元测试框架,极大地简化了测试代码的编写和执行。本篇将深入探讨JUnit4的相关知识点,帮助你更好地掌握这个强大的工具。 1. JUnit4简介: JUnit4是由Ernst Kuhr和Kent Beck开发的...

    Junit+dbunit单元测试jar包

    `Junit` 和 `dbunit` 是两个非常重要的工具,它们分别针对Java应用程序的单元测试和数据库测试提供支持。让我们详细了解一下这两个库以及如何将它们结合使用。 `Junit` 是一个流行的开源Java单元测试框架,由Ernst ...

    junit4.10+dbunit2.4.7+httpunit+junitperf的jar包

    Junit是Java编程语言中最著名的单元测试框架,版本4.10是其一个稳定版本。它提供了注解(Annotation)功能,使得编写测试用例更加简洁。例如,`@Test`用于标记测试方法,`@Before`和`@After`用于在每个测试方法之前...

    基本路径测试法和单元测试工具JUnit的使用

    基本路径测试法和单元测试工具JUnit的使用 本实验报告旨在介绍基本路径测试法和单元测试工具JUnit的使用。通过本实验,学生将掌握基本路径测试方法、了解在Eclipse环境下JUnit单元测试工具的安装和使用方法,並针对...

    单元测试利器 JUnit 4 完整实例图解

    单元测试利器 JUnit 4 完整实例图解 做测试的必看的文档 希望对您有帮助

    Java单元测试之JUnit篇

    Java单元测试之JUnit篇 Java单元测试是编写测试代码,应该准确、快速地保证程序基本模块的正确性。好的单元测试的标准是JUnit,它是Java单元测试框架,已经在Eclipse中默认安装。 JUnit4是JUnit的最新版本,通过...

    Java单元测试JUnit4.7

    JUnit是Java领域最广泛使用的单元测试框架,它为开发者提供了一种简洁、高效的测试工具。JUnit 4.7是该框架的一个版本,包含了对之前版本的改进和新功能。 在Java开发中,单元测试是对单个或小部分代码进行的功能...

    Junit单元测试文档

    junit3 junit4 api,单元测试的利器

    DBUnit 进行单元测试

    DBUnit 是一个强大的Java库,专门用于数据库的单元测试。它与JUnit和其他测试框架结合使用,可以帮助开发者在数据库层面上确保代码的正确性。DBUnit 提供了一种结构化的方式来导入和导出数据库数据,使得测试环境...

    软件测试中Junit单元测试实例

    上下文时间软件测试中Junit单元测试实例在一种传统的结构化编程语言中,比如C,要进行测试的单元一般是函数或子过程。在象C++这样的面向对象的语言中,要进行测试的基本单元是类。对Ada语言来说,开发人员可以选择是...

Global site tag (gtag.js) - Google Analytics