8个超实用的Java测试工具和框架

Java入门

如果你才刚开始接触Java世界,那么要做的第一件事情是,安装JDK——Java Development Kit(Java开发工具包),它自带有Java Runtime Environment(JRE)和JVM(Java运行时环境)。它能让你在自己的电脑上编译、运行、测试你的Java程序。

此外,你还需要IDE(集成开发环境)。选择有很多,如IntelliJ、Eclipse和NetBeans。

Java测试工具

下面是我精选的8个最棒的Java测试工具和框架。

1.Arquillian

Arquillian是JVM一个高度创新性和可扩展的测试平台,支持Java开发人员轻松创建自动化集合的,功能性的和验收的测试。 Arquillian允许在运行时间执行测试。Arquillian可以用来管理单个或多个容器的生命周期,捆扎测试用例,从属类和资源。它还能够部署归 档到容器中,在容器中执行测试、捕获结果,并创建报告。

Arquillian集成了常见的测试框架,如JUnit 4、TestNG 5,并允许使用现有的IDE发布测试,并且由于其模块化的设计使得能够运行Ant和Maven测试插件。

8个超实用的Java测试工具和框架

官方网站:http://arquillian.org/

2.JTest

JTest也被称为“Parasoft JTest”,是一款通过Parasoft制作的自动化的Java软件测试和静态分析软件。JTest包含的功能有:单元测试情况下的生成和执行、静态代码分析、数据流的静态分析、度量分析、回归测试、运行时错误检测。

此外,它还具备了同行代码审查流程自动化和运行时错误检测的功能,如:竞态条件、异常、资源和内存泄漏、安全漏洞攻击。

8个超实用的Java测试工具和框架

官方网站:http://www.parasoft.com/product/jtest/

3.The Grinder

“The Grinder”是一个Java负载测试框架,不但运行简单,而且其分布式测试采用了许多负载注入机器。只要有Java API,The Grinder就可以负载测试。这包括HTTP Web服务器、SOAP和REST Web服务器、应用程序服务器、以及用强大的Jython和Clojure语言写的包含了自定义协议的测试脚本。The Grinder的GUI控制台允许对多个负载注射器进行监测和控制,并自动管理客户端连接和cookies、SSL、代理感知和节流连接。

The Grinder在BSD风格的开源许可下是免费的。

官方网站:http://grinder.sourceforge.net/download.html

4.TestNG

TestNG是一款为Java编程语言设计的测试框架,灵感来自于JUnit和NUnit。 TestNG的主要功能是覆盖范围更广的测试分类,如单元、功能性、端到端,一体化等。它还有一些新的功能,可以使之更强大和更容易使用,如:注解、具备 大型线程池各种策略的运行测试、多线程的代码测试、灵活的测试配置、参数化数据驱动的测试支持,等等。

TestNG支持各种各样的工具和插件,比如Eclipse、IDEA、Maven等等。

官方网站:http://testng.org/doc/download.html

5.JUnit的

JUnit是一个为Java编程语言设计的单元测试框架。 JUnit为测试驱动开发框架的发展发挥了重要作用。它是现在被统称为xUnit的单元测试框架大家庭的组成成员之一,源于SUnit。

在编译时,JUnit可以连接作为JAR,用于编写可重复的测试。

官方网站:https://github.com/junit-team/junit/wiki/Download-and-Install

6.JWalk

JWalk是一个为Java编程语言设计的单元测试工具包。它可支持被称为懒人系统单元测试的测试模式。JWalkTester工具能执行由程序员提供的编译过的任意Java类中的任何测试。通过静态和动态分析,以及提示后面的程序员,它能够使得测试符合惰性规范。

8个超实用的Java测试工具和框架

官方网站:http://staffwww.dcs.shef.ac.uk/people/A.Simons/jwalk/download.html

7.Mockito

Mockito是一款在MIT License可用的支持Java的开源测试框架。Mockito允许程序员使用自动化的单元测试创建和测试双对象(模拟对象),以达到测试驱动开发(TDD)和行为驱动开发(BDD)的目的。

8个超实用的Java测试工具和框架

官方网站:http://mockito.org/

8.Powermock

PowerMock是一款支持单元测试源代码的Java框架。虽然PowerMock可以作为Mocking框架,例如Mockito和 EasyMock的扩展而运行,但是它具备了更强大的能力。PowerMock利用自定义的类加载器和字节码操纵器,来确保静态方法的模拟、静态初始化的 删除、函数构造、最终的类和方法以及私有方法。它的主要目的是通过最少的方法和注释来扩展现有的API,以获得额外的功能。

它在开源Apache License 2.0条件下可用,也可以在Powermock Google Code site找到它.

官方网站:https://code.google.com/p/powermock/

希望本文能对你找寻适合自己的Java测试工具和框架有所帮助。

那么你用的是什么工具来对代码进行测试的呢亲?

译文链接:http://www.codeceo.com/article/8-java-test-framework.html
英文原文:The 8 Useful Java Testing tools for Programmers, Developers and Coders

更多相关文章
  • 一.概述        在DeskClock(一)中介绍了该程序源码的迁出,现在开始分析该应用的源码,DeskClock主要有四个功能,闹钟,时钟,定时,和秒表,在这篇博客中主要分析DeskClock的入口和主UI上的逻辑结构,在后续的系列中会把这四个功能都串起来. 二.源码分析 1.activit ...
  • 1.下载和安装wxPython.需要注意的是选择的wxpython版本需要和python的版本相对应.具体的安装过程就不赘述了. 2.使用wxPython进行GUI应用程序的创建:开始需要导入wx模块:import wx.编写wxPython程序的方法很多,但不可避免的事情是创建应用程序对象.基本的 ...
  • 易网科技讯 8月7日消息,据路透社报道,路透社看到的一份文件显示,思科.谷歌.亚马逊等互联网公司将需要遵守一项新的欧盟网络安全法规.该法规将强制要求它们采取严格的安全措施,它们可能还需要向政府机构汇报严重的网络安全漏洞事件.对于<网络与信息安全指令>,欧盟成员国和欧盟立法委员之间的洽谈一 ...
  • css代码: img,a img{ border:0; margin:0; padding:0; max-width:590px; width:expression(this.width590?590px:this.width); max-height:590px; height:expressio ...
  • 目录: 一. 新浪的布局特点 二. 内容细节的特点 三. 其中相关的一些基础技术点 1. 常见布局方法 2. 布局要点 3. Debugger误区 4.列表 5.字体颜色 6.CSS选择符 7.CSS图片 10. CSS半透明 文章背景:这是一次内部交流会的PPT,通过文字的方式记录下来,分享给更多 ...
  • 了解魅族MX4手机的朋友们都知道魅族MX4是一款双网手机,魅族MX4可以支持联通以及移动的2.3.4G网络,但是有不少朋友们想知道魅族MX4是双卡双待吗?针对此问题,本文就为介绍魅族MX4手机的卡槽情况 刚刚有网友“幸福对唱”问小编这样一个问题:魅族MX4是双卡双待吗?对于这个问题,笔者百度搜索了一 ...
一周排行
  • 本节课的主要内容有:1.使用Log类进行日志输出2.详细讲解如何进行单元测试3.通过实例学习Debug调试技能课程下载地址:http://u.115.com/file/f13b7811a5课件及源码下载地址:http ...
  • <精通Unix下C语言编程与项目实践>读书笔记(new) 文章试读 不拘一个遍程序系列:编程序不能一个脑袋钻到底,有时要学会变通,即所谓的曲线救国.一.二.三.四 职场规划:一些杂七杂八的职场感悟吧.不值 ...
  • 导读:全球经济的繁荣大大得益于信息技术的蓬勃发展,正因为如此,信息对于当今所有企业来说都至关重要,数据正日渐成为企业的战略资产,随着数据对企业决策的重要性的提升,其准确性.及时性和安全性也得到世人前所未有的重视. 以 ...
  • 利用左右连接解决查询为空的问题   Oracle的左右连接:   www.2cto.com   右连接,显示a.h1所有内容:select a.h1 , b.h2 from a,b where a.h1=b.h1(+ ...
  • 易网科技讯,2月15日消息,据国外媒体报道,2005年默多克以5.8亿美元收购MySpace,当时MySpace正如日中天,如今却显得日薄西山,业界分析人士指出:默多克本人对互联网缺乏了解,因此作出了一系列错误决策, ...
  • /*====================================================================== 有N阶台阶,上楼可以一次上一阶,也可以一次上二阶. 编一个程序,计算共 ...
  • 谷歌CEO埃里克·施密特(前右)访华时和时任谷歌中国区总裁李开复(前左)接受媒体采访 易网科技讯 10月8日消息 据国外媒体报道,谷歌首席执行官埃里克·施密特(Eric Schmidt)周三表示,广告市场最坏时期已经 ...
  • 天涯明月刀逍遥快速答题方法_天涯明月刀逍遥答题快答攻略推荐.一起跟随小编过来看看吧 今天小编给大家带来天涯明月刀逍遥快速答题方法:许多玩家每天答题拿不到第一:今天小编教大家怎么拿第一:一起看看吧! 视频介绍 天涯明月 ...
  • 由于,最近公司事情比较多,再加上一直没有头绪所以没有更新我的博文:今天终于平静下来写这篇博文,前一篇我们介绍了我们第一个 CAS和HUB角色整合的服务器的部署 这里我们想实现负载均衡我们就需要部署第二台CAS和HUB ...
  • mysqlslap分三个阶段: 1.创造模式,表,并且选择任何药存储的你要测试的饿程序或者数据.这一段采用单一的客户端连接. 2.运行负荷试验,这一阶段可以使用许多客户端连接. 3.清理(断开,删除表如果说明).这一 ...