Junit是一个开源框架,可以写重复的自动化测试来确保代码的正确。它能够提供:
(1)期望结果测试告警
(2)共享常用的测试数据
(3)易于组织和运行测试的测试套件
(4)图形化的测试运行
它可以被用来测试:
(1)一个完成的对象;
(2)一个对象的一部分--一个方法或者是一些相关联的方法;
(3)几个对象之间的关联
1、Junit的简单例子
有下面一个类:
package com.junit.calc; public class Calculate{ public int sum(int val1, int val2){ System.out.println("adding value: " + val1 + "+" + val2); return val1 + val2; } }
包含一个方法sum,接受两个int类型的变量,并返回两个变量的和。
现在用Junit对其进行测试,代码如下:
import com.junit.calc.Calculate; import junit.framework.Assert; import org.junit.Test; public class CalculateTest{ Calculate calc = new Calculate(); int sum = calc.sum(2, 8); int testSum = 7; @Test public void testSum(){ System.out.println("@test sum" + sum + "=" +testSum); Assert.assertEquals(testSum, sum); } }
首先是有一个@Test注解,这个注解表明了testSum方法是用来测试的,然后是
Assert.assertEquals(testSum, sum);
这个方法用来对比期望和实际的值,当两个值相等时不会告警,输出两个值告警,当两个值不相等时,告警,并中断程序执行。
2、Junit的注解介绍
(1)@Test 该注解表明了它所附属的public void 方法是一个测试实例。
(2)@Before 该注解表明了它所附属的方法必须在测试之前执行,以便执行一些测试前的预处理。
(3)@BeforeClass 该注解表明它所附属的静态方法只能执行一次,并且只能在所有测试之前执行。
(4)@After 该注解表明它所附属的方法在每一个测试完成之后都会执行,用于重置一些测试之后的变量。
(5)@AfterClass 该注解表明它所附属的方法在所有测试完成之后执行。
3、Junit assertions
Junit提供了一系列的Assert方法, 下面进行简单介绍。
(1)assertEquals 断言两个值是相等的,其中的两个值一个指的是期望值,一个指的是实际值。值可以是int boolen short long byte char 或者是object类型。
(2)assertTrue 断言判断条件是否为真
(3)assertFalse 断言判断条件是否为假
(4)assertNull 断言一个对象是空的
(5)assertNotNull 断言一个对象不是空的
(6)assertSame 断言两个对象引用指向的是同一个对象
(8)assertNotSame 断言两个对象引用指向的是不同对象
(9)assertArrayEquals 断言两个数组是相等的
相关推荐
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
第2章:进一步深入研究了Junit的类,生命周期和框架。为了把这些联系起来,我们描述了一些 测试的方法和例子。 第3章:描述了一个复杂的TestCase,以使向你展示Junit较大的组件如何工作。这个案例中分析的是很多 ...
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
JUnit是Java编程语言中...虽然这个版本是快照版本,但仍然包含了JUnit 4系列的核心功能,对于学习和理解JUnit 4的用法具有很大的参考价值。在实际开发中,我们通常会选择正式发布的稳定版本以获得更好的稳定性和支持。
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
在《Spring实战》第四版的第二章中,这些Jar包可能被用于学习和实践Spring框架的基本概念和核心特性。Spring是一个强大的企业级应用开发框架,它提供了依赖注入、AOP(面向切面编程)、事务管理等功能,使得Java应用...
1、 在应用tests目录文件下新建一个libs文件夹,将android-junit-report-dev.jar拷贝到该libs文件夹中 2、 在应用tests目录中的Android.mk文件加上如下配置: LOCAL_STATIC_JAVA_LIBRARIES += android-junit-report...
《JUnit实战(第2版)》从认识JUnit、不同的测试策略、JUnit与构建过程、JUnit扩展4个方面,由浅入深、由易到难地对JUnit展开了系统的讲解,包括探索JUnit的核心、软件测试原则、测试覆盖率与开发、使用stub进行粗...
根据提供的信息,我们可以总结出以下关于《JUnit实战(第2版)》的重要知识点: ### 1. JUnit简介 - **定义**:JUnit是一个广泛使用的Java单元测试框架,旨在简化测试过程并提高软件质量。 - **版本更新**:本书...
2. **junit-4.9-javadoc.jar**:这个文件包含了JUnit 4.9的API文档,它是开发者学习和理解JUnit API的重要资源。通过查看这个JAR中的文档,开发者可以了解到每个类、接口、方法的功能、参数、返回值以及可能抛出的...
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
5. **第二级缓存**:支持使用第三方缓存提供商(如EhCache)实现跨会话的数据缓存,提高性能。 **JUnit 4.10**是JUnit框架的一个较旧版本,尽管如此,它仍然是许多Java开发者进行单元测试的首选工具。JUnit提供了...