JUnit4注解
今天学习了下,mybatis中开发dao的方法,用到了JUnit4进行单元测试,
将JUnit4中的注解总结了下,供大家参考学习:
JUnit 4 开始使用 Java 5 中的注解(annotation),常用的几个 annotation 介绍:
@BeforeClass:针对所有测试方法,只执行一次,且方法声明必须为static void
@Before:初始化方法(在测试方法之前执行)
@Test:测试方法,在这里可以进行具体的测试
@After:释放资源 (在测试方法之后执行)
@AfterClass:针对所有测试方法,只执行一次,且方法声明必须为static void
@Ignore:忽略的测试方法
一个单元测试用例执行顺序为: @BeforeClass –> (@Before –> @Test –> @After)...–> @AfterClass
其中每一个测试方法的调用顺序为: @Before –> @Test –> @After
如果只执行一个单元测试用例中的一个方法,则执行顺序为:@BeforeClass –> @Before –> @Test –> @After –> @AfterClass
测试类代码如下:
package org.pine.mybatis.dao.impl; import java.io.IOException;
import java.io.InputStream;
import java.sql.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.Test;
import org.pine.mybatis.dao.UserDao;
import org.pine.mybatis.po.User; public class UserDaoImplTest { private static SqlSessionFactory sqlSessionFactory; @BeforeClass
public static void initTest() throws IOException{
System.out.println("initTest");
String fileName ="SqlMapConfig.xml";
InputStream inputStream = Resources.getResourceAsStream(fileName);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} @AfterClass
public static void destoryTest(){
System.out.println("destoryTest");
} @Before
public void setUp() throws Exception {
System.out.println("setUp");
} @After
public void tearDown() throws Exception {
System.out.println("tearDown");
} @Ignore
@Test
public void testInsertUser() throws ParseException {
UserDao userDao = new UserDaoImpl(sqlSessionFactory);
User user = new User();
user.setUsername("武利丹");
user.setBirthday(new Date(new SimpleDateFormat("yyyy-MM-dd").parse("1990-06-18").getTime() ));
user.setSex("女");
user.setAddress("河南安阳");
userDao.insertUser(user);
} @Ignore
@Test
public void testGetUserById() {
UserDao userDao = new UserDaoImpl(sqlSessionFactory);
int id = 28;
User user= userDao.getUserById(id);
System.out.println(user);
} @Ignore
@Test
public void testUpdateUser() throws ParseException {
UserDao userDao = new UserDaoImpl(sqlSessionFactory);
User user = new User();
user.setId(36);
user.setUsername("孙坤鹏");
user.setBirthday(new Date(new SimpleDateFormat("yyyy-MM-dd").parse("1991-09-13").getTime()));
user.setSex("男");
user.setAddress("河南新乡12345~~~");
userDao.updateUser(user);
} @Test
public void testDeleteUser() {
UserDao userDao = new UserDaoImpl(sqlSessionFactory);
Integer id = 40;
userDao.deleteUser(id);
} }
JUnit4注解的更多相关文章
- JUnit4注解基本介绍
@After If you allocate external resources in a Before method you need to release them after the test ...
- Junit4常用注解
Junit4注解 JUnit4的测试类不用再继承TestCase类了.使用注解会方便很多. @Before:初始化方法@After:释放资源@Test:测试方法,在这里可以测试期望异常和超时时间@Ig ...
- JUnit4教程-高速入口
前言 大学刚学java当听说JUnit该,单元测试框架,使用非常简单的测试框架,JUnit测试测试框架将更加方便,easy.编写測试代码也是简单.明了,功能强大.今天我给大家简单分享一下最新JUnit ...
- JAVA Junit4
JAVA Junit4 测试框架 序言 刚学Java的时候就听说过JUnit了,单元测试框架,很好用的测试框架,JUnit测试 ...
- junit4单元测试基础
导入方法看如下截图就明白了: 新建测试用例 右击包名,点击新建,或者新建里的others,选择JUnit test case,如下图所示: 接下来,给测试类起名字和选择要测试的类,如下图所示: ...
- 使用 JUnit 进行单元测试 - 教程
tanyuanji@126.com 版本历史 JUnit 该教程主要讲解 JUnit 4.x 版本的使用,以及如何在Eclipse IDE 中如何使用JUnit 目录 tanyuanji@126. ...
- 【转】Java JUnit 单元测试小结
原文链接:https://segmentfault.com/a/1190000006731125 测试类型 单元测试(Unit test) 单元测试关注单一的类. 它们存在的目的是检查这个类中的代码是 ...
- Java单元测试学习
单元测试的好处 1. 让你写出更好的代码:职业高内聚.低耦合而且接口设计合理的代码才易于测试: 2. 让你在修改代码时更有信心. JUnit4 注解 @Test (expected = Excepti ...
- Spring DAO
Spring DAO 连接池 使用JDBC访问数据库是,频繁的打开连接和关闭连接,造成性能影响,所以有了连接池.数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接, ...
随机推荐
- 工作jQuery基础复习(一)
1.prop() 方法 设置或者返回被选元素的属性和值 当该方法用于返回属性值时,则返回第一个匹配元素的值 当该方法设定属性值时,则为匹配元素集合设置一个或者多个属性/值对
- Android 视频播放器 (三):使用NBPlayer播放直播视频
一.前言 在 Android 音视频开发学习思路 中,我们不断的学习和了解音视频相关的知识,随着知识点不断的学习,我们现在应该做的事情,就是将知识点不断的串联起来.这样才能得到更深层次的领悟.通过整理 ...
- Javascript高级编程学习笔记(18)—— 引用类型(7)单体内置对象
什么是内置对象呢? js高级程序设计中给出的定义为:由ES规定不依赖于宿主环境的对象,这些对象在JS执行前就已经存在 前面我们介绍的引用类型都是内置对象 除了这些对象外ECMA还规定了两个单体内置对象 ...
- JavaScript 基础排序的实现(二)
继上一篇O(n^2)的排序算法后,这一篇主要记录O(n*logn)的排序算法 1.快排(快速排序) 这一算法的核心思想为,先随机选一个数作为标兵或者说是标记(这个数一般来说选择该无序数组的中间那个元素 ...
- 白话TCP为什么需要进行三次握手
阅读本文大概需要 2.3 分钟. 作者:雨林 https://www.cnblogs.com/yuilin 首先简单介绍一下TCP三次握手 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次 ...
- Kali学习笔记18:OpenVAS使用
上一篇讲了什么是OpenVAS以及如何安装: https://www.cnblogs.com/xuyiqing/p/9690373.html 接下来就是使用: 我先打开一台Metasploitable ...
- IDEA新手使用教程(详解)
IDEA从下载安装到使用,手把手教你 一.IDEA的下载 IDEA下载地址:https://www.jetbrains.com/idea/download/#section=windows IDEA ...
- Aseprite+Cocos:打包像素画图,导入到cocos里并动起来
前言:Aseprite入门教程 Aseprite入门:第一个gif动图 1.制作像素画: 按照上一次的小球跳动制作过程,先制作一个像素画动画: 若是导出gif动态图,效果如下: ...
- node的安装及基本使用!
一.node的基本安装和使用 1.什么是node.js 答:node.js是JavaScript运行环境.实际上它是Google V8引擎进行了封装.V8引擎执行JavaScript的速度非常的 快 ...
- Vue 加载外部js文件
Vue.js 加载外部js文件 在项目内新建一个config.js //变量的定义 export var config = { baseurl:'http://172.16.114.5:8088/M ...