文档章节

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

拉偶有所依
 拉偶有所依
发布于 2015/06/24 10:20
字数 1403
阅读 322
收藏 27

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测试插件。

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

2.JTest

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

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

官方网站: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类中的任何测试。通过静态和动态分析,以及提示后面的程序员,它能够使得测试符合惰性规范。

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

7.Mockito

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

官方网站: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代码编写完,一定要注意安全这个问题,尝试借助专业的平台资源做加密安全保护一定可以事半功倍!


© 著作权归作者所有

共有 人打赏支持
拉偶有所依
粉丝 25
博文 81
码字总数 138944
作品 0
长沙
私信 提问
推荐!国外程序员整理的Java资源大全

构建 这里搜集了用来构建应用程序的工具。 Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建。Maven优于Apache Ant。后者采用了一种过程化的方式进行配...

huntering
2015/01/13
0
0
构建 这里搜集了用来构建应用程序的工具。 Apache Maven:Maven使用声明进行构建并

构建 这里搜集了用来构建应用程序的工具。 Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建。Maven优于Apache Ant。后者采用了一种过程化的方式进行配...

enosh
2015/01/09
0
2
Java程序员应该知道的10个Eclipse调试技巧

Eclipse是众多Java程序员实用的开发工具,其中开发技巧也是繁多,但作为优秀的Java程序员,需要掌握最起码的调试技巧。 1 条件断点 2 异常断点 3 监视点 4 评估/检查 5 修改变量值 6 在Main函...

kouxunli1
2014/03/18
0
0
JUnit 5.2.0 发布,Java 单元测试框架

JUnit 5.2.0 发布,JUnit 5.2.0 = Platform 1.2.0 + Jupiter 5.2.0 + Vintage 5.2.0,此次更新包括构建工具的增强、参数化测试的改进等。 更新信息如下: 构建工具功能增强以支持新的模块化体...

雨田桑
05/04
0
0
《JDK10新特性官方文档》-317:实验性的基于JAVA的JIT编译器

JEP 317: 实验性的基于JAVA的JIT编译器 原作者 Igor Veresov 创建日期 2017/10/20 20:03 更新日期 2018/03/28 01:58 类型 特点 状态 已关闭/ 已发布 组件 hotspot / 编译器 范围 JDK 详述...

Rudy
01/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Confluence 6 快捷键

快捷键图标。 官方的下载地址为:https://atlassianblog.wpengine.com/wp-content/uploads/2018/01/keyboard-shortcuts-infographics.pdf...

honeymose
36分钟前
1
0
Apache限定目录解析PHP,限制user_agent,PHP相关的配置

Apache限定目录解析PHP 配置前访问upload/index.php [root@test-a ~]# curl -x192.168.77.139:80 'www.test.com/upload/index.php'This is upload diretory 配置,/usr/local/apache2.4/......

野雪球
40分钟前
1
0
java.util.Concurrent.Exchanger源码

类图 源码: package java.util.concurrent;import java.util.concurrent.atomic.AtomicInteger;import java.util.concurrent.atomic.AtomicReference;import java.util.concurrent......

狼王黄师傅
今天
5
0
Kubernetes里的secret最基本的用法

Secret解决了密码、token、密钥等敏感数据的配置问题,使用Secret可以避免把这些敏感数据以明文的形式暴露到镜像或者Pod Spec中。 Secret可以以Volume或者环境变量的方式使用。 使用如下命令...

JerryWang_SAP
昨天
4
0
2018-11-20学习笔记

1. python数据类型: 给变量赋值什么样的值,变量就是什么样的类型 给变量赋值整数,变量就是整数类型 给变量赋值字符串,变量就是字符串类型 123 和“123”一样吗? 在python中 单引号 与双...

laoba
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部