- 浏览: 1051397 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (1355)
- test (75)
- 红茶和绿茶 (1)
- Jave SE (206)
- Oracle (19)
- English (177)
- Log4j (5)
- RIA(Rich Internet Applications) (9)
- Ext Js (6)
- Android (14)
- Logo (0)
- 文字采撷 (287)
- 使用技巧 (92)
- Project Management (22)
- Hibernate (12)
- Struts (5)
- 规则引擎 (1)
- Html & Javasctipt (56)
- Spring MVC (10)
- Maven (17)
- Java Test (17)
- Linux (16)
- Tools (1)
- CV (0)
- Middleware (2)
- HTML5 (2)
- Algorithms (4)
- Web Service (15)
- 留学 (15)
- LADP (5)
- PXCOA (0)
- SysLog (6)
- SSO (3)
- Spring Security (4)
- Spring Batch (1)
- Jmail (1)
- Bible (4)
- Java Thread (5)
- Architect (6)
- github (2)
- Java Swing (12)
- NoSQL (7)
- UML (2)
- 敏捷(Agile) (7)
- Hudson+Maven+SVN (15)
- cloud computing (2)
- Bahasa Indonesia (1)
- jBPM (6)
- 民俗知识 (3)
- Consulting (1)
- Mysql (5)
- SAP (1)
- 微信公众平台接口开发 (3)
- 做生意 (1)
- 西餐 (1)
- Banking (1)
- Flex (0)
- 黄金投资 (1)
- Apache Tomcat 集群 (3)
- Hadoop (7)
- 需求分析 (1)
- 银行知识 (3)
- 产品管理 (2)
- 钢琴Music (3)
- 设计 (3)
- Marketing (2)
- US Life (3)
- 算法 (14)
- BigData (4)
- test红茶和绿茶Jave SEOracleEnglishLog4jRIA(Rich Internet Applications)Ext JsAndroidLogo文字采撷 (0)
- Design Pattern (5)
- NodeJS&AngularJS (9)
- Python (1)
- Spring boot (0)
- ACM (3)
最新评论
-
心往圣城:
微时代-最专业的微信第三方平台。LBS定位导航,微网站,自定义 ...
微信公众平台 /微信公众平台怎么用 -
zhaojiafan:
return ReverseStr1(str.substrin ...
逆转字符串 Write a String Reverser (and use Recursion!) -
zhaojiafan:
public class StringUtils {
p ...
逆转字符串 Write a String Reverser (and use Recursion!)
JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写。
先简单解释一下什么是Annotation,这个单词一般是翻译成元数据。元数据是什么?元数据就是描述数据的数据。也就是说,这个东西在Java里面可以用来和public、static等关键字一样来修饰类名、方法名、变量名。修饰的作用描述这个数据是做什么用的,差不多和public描述这个数据是公有的一样。想具体了解可以看Core Java2。废话不多说了,直接进入正题。
我们先看一下在JUnit 3中我们是怎样写一个单元测试的。比如下面一个类:
public class AddOperation {
public int add(int x,int y){
return x+y;
}
}
我们要测试add这个方法,我们写单元测试得这么写:
import junit.framework.TestCase;
import static org.junit.Assert.*;
public class AddOperationTest extends TestCase{
public void setUp() throws Exception {
}
public void tearDown() throws Exception {
}
public void testAdd() {
System.out.println(\"add\");
int x = 0;
int y = 0;
AddOperation instance = new AddOperation();
int expResult = 0;
int result = instance.add(x, y);
assertEquals(expResult, result);
}
}
可以看到上面的类使用了JDK5中的静态导入,这个相对来说就很简单,只要在import关键字后面加上static关键字,就可以把后面的类的static的变量和方法导入到这个类中,调用的时候和调用自己的方法没有任何区别。
我们可以看到上面那个单元测试有一些比较霸道的地方,表现在:
1.单元测试类必须继承自TestCase。
2.要测试的方法必须以test开头。
如果上面那个单元测试在JUnit 4中写就不会这么复杂。代码如下:
import junit.framework.TestCase;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
/**
*
* @author bean
*/
public class AddOperationTest extends TestCase{
public AddOperationTest() {
}
@Before
public void setUp() throws Exception {
}
@After
public void tearDown() throws Exception {
}
@Test
public void add() {
System.out.println(\"add\");
int x = 0;
int y = 0;
AddOperation instance = new AddOperation();
int expResult = 0;
int result = instance.add(x, y);
assertEquals(expResult, result);
}
}
我们可以看到,采用Annotation的JUnit已经不会霸道的要求你必须继承自TestCase了,而且测试方法也不必以test开头了,只要以@Test元数据来描述即可。
从上面的例子可以看到在JUnit 4中还引入了一些其他的元数据,下面一一介绍:
@Before:
使用了该元数据的方法在每个测试方法执行之前都要执行一次。
http://www.cnblogs.com/eggbucket/archive/2012/02/02/2335697.html
发表评论
-
各种在线工具
2018-05-10 05:52 412http://rextester.com/ -
Java Array sort and Collections sort
2018-04-11 04:55 385package com.test; imp ... -
webpack+es6+node+react初实践及总结
2018-02-01 10:38 362webpack+es6+node+react初实践及总结 ... -
Interview Preparation
2018-01-25 08:26 438Algorithms https://www. ... -
深入理解Java集合框架
2017-08-18 08:40 622https://github.com/CarpenterLe ... -
logic gate (AND, OR, XOR, NOT, NAND, NOR and XNOR)
2017-08-18 08:33 2454A logic gate is an elementary ... -
深入理解Java PriorityQueue
2017-08-18 01:25 420本文github地址 Java中PriorityQueu ... -
jwt-spring-security-demo
2017-08-12 07:30 609https://github.com/szerh ... -
Java Program to Check Whether a Number is Palindrome or Not
2017-08-08 06:59 548public class Palindrome { ... -
Java实现Tire
2017-08-07 08:14 597Java实现Tire Trie ... -
OpenID, SAML, and OAuth
2017-08-03 07:03 594Single sign-on (SSO) started i ... -
分享两个JavaEE 非常好的网站,案例丰富
2017-08-01 09:07 349http://www.mkyong.com/al ... -
Introduction to Programming in Java
2017-07-19 13:26 459http://introcs.cs.princeton.ed ... -
Two piece of code
2017-06-20 00:43 430if ( updateRe ... -
ACM Online Judge
2017-06-05 01:26 455http://acm.nyist. ... -
java枚举使用详解
2017-05-25 06:16 465package com.ljq.test; /** ... -
Longest Common Substring
2017-05-21 08:22 505Dynamic Programming | Set 29 ( ... -
Dynamic Programming
2017-05-06 10:48 366Dynamic Programming | Set 1 (O ... -
Predefined Character Classes
2017-04-24 02:45 402Predefined Character Clas ... -
IS-A Relationship And HAS-A Relationship
2017-04-13 14:50 1703One of the advantages of an Ob ...
相关推荐
综上所述,安卓Unit Test不仅包括了对移动应用开发的基础理解,还涵盖了如何搭建开发环境、创建简单应用以及使用JUnit进行单元测试等多个方面。通过这一系列的学习与实践,开发者可以更加熟练地掌握安卓应用的开发...
- **JUnit 4 简介**:JUnit 4 是一个广泛使用的Java单元测试框架,提供了强大的测试功能,如注解、参数化测试等。 - **设置 Eclipse**:Eclipse 是一种流行的集成开发环境(IDE),支持多种编程语言,包括 Java。在 ...
### JUnit概述 JUnit是Java领域最流行的单元测试框架,由Erich Gamma和Kent Beck创建。这两位作者因设计模式和极限编程(Extreme Programming)而闻名于世。JUnit提供了丰富的API,支持编写、运行和报告测试结果,...
在Java开发领域,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作,而JUnit则是进行单元测试的重要工具。本教程将围绕Hibernate 4.2.4版本与JUnit 4.0,探讨这两者如何协同工作,帮助...
单元测试与主函数(1:Unit test and main function-Java API 实战.md) 单元测试是软件开发过程中的重要环节,它能确保代码的正确性。笔记中详细介绍了JUnit框架的使用,以及如何编写和执行单元测试。同时,主函数...
#### 三、JUnit概述 ##### 3.1 JUnit简介 JUnit是一个开源的Java语言单元测试框架,最初由Erich Gamma和Kent Beck创建。它被广泛应用于Java项目中,帮助开发者编写和执行自动化测试。JUnit不仅仅是一个测试工具,它...
#### 概述 在软件开发过程中,单元测试作为确保代码质量的关键步骤之一,对于Java EE应用程序尤为重要。本文档将介绍如何使用JBoss进行EJB 3.0组件的单元测试,这对于提高Java EE应用的稳定性和可维护性具有重要意义...
### 单元测试详解与JUnit应用 ...总之,单元测试是现代软件工程实践中不可或缺的一部分,JUnit作为Java领域内领先的单元测试框架,为开发者提供了强大且易用的测试工具,极大地促进了软件质量和开发效率的提升。
- **单元测试**(Unit Test):针对单一组件或模块进行测试,验证其独立功能是否正常。 - **功能测试**(Function Test):测试特定功能是否按预期工作,通常涉及多个组件之间的交互。 - **整合测试**(Integration ...
JSUnit 是一个轻量级的测试框架,它模仿了Java的JUnit框架,为JavaScript开发者提供了自动化测试的能力。通过JSUnit,开发者可以编写测试用例,检查程序各个部分的功能是否正常工作,从而尽早发现并修复潜在的错误。...
Unit Test工具如JUnit(Java平台)和PyTest(Python平台)等,帮助开发者编写和执行自动化的单元测试用例,以验证代码功能的正确性。这些工具提供断言机制,用于判断程序运行结果是否符合预期,还能生成测试报告,...
3. `src/test/java`:测试代码目录,使用cdi-unit编写对CDI bean的单元测试。 4. `README.md`:项目介绍和指南,可能包含如何构建和运行项目,以及如何理解示例的说明。 通过这个项目,你可以学习到如何在实际开发...
9. **Unit Testing and Integration Testing**:项目可能包含JUnit或TestNG测试用例,确保代码质量及功能正确性,同时,对于集成测试,可能会使用Mockito或Spring Boot的Test Slice特性。 10. **Docker**:考虑到...
8. **Unit Testing & Integration Testing**: 使用JUnit和Mockito进行单元测试,确保代码质量;可能还有Spring Boot的Test Slice特性来进行集成测试。 **关键组件** 1. **Controller层**: 处理HTTP请求,将请求...
10. **Unit Testing & Instrumentation Testing**: 使用 JUnit、Mockito 进行单元测试, Espresso 进行 UI 测试,确保代码质量。 以上只是对可能涉及的部分技术栈的概述,实际的 "filmsearch" 项目可能根据其具体...