单元测试JUnit 4
介绍
使用
下载
- 下载 JUnit4.8.1.jar 包(这里提供了下载地址)
加入项目
- 把 junit4.8.1.jar 文件,加入到项目的 classpath 中。
对比
演示代码
import static org.junit.Assert.*; import org.junit.Ignore;
import org.junit.Test; public class TestWordDealUtil {
// 测试 wordFormat4DB 正常运行的情况
@Test
public void testWordFarmat4DBNormal() {
String target = "employeeInfo";
String result = WordDealUtil.wordFormat4DB(target); assertEquals("employee_info", result);
} // 测试 null 时的处理情况
@Test(expected=NullPointerException.class)
public void testWordFormat4DBNull() {
String target = null;
String result = WordDealUtil.wordFormat4DB(target); assertNull(result);
} // 测试空字符串的处理情况
@Test
public void testWordFormat4DBEmpty() {
String target = "";
String result = WordDealUtil.wordFormat4DB(target); assertEquals("", result);
} // 测试当首字母大写时的情况
//@Ignore
@Test
public void testWordFormat4DBBegin() {
String target = "EmployeeInfo";
String result = WordDealUtil.wordFormat4DB(target); assertEquals("_employee_info", result);
} // 测试当尾字母大写时的情况
@Test
public void testWordFormat4DBEnd() {
String target = "employeeInfoA";
String result = WordDealUtil.wordFormat4DB(target); assertEquals("employee_info_a", result);
} // 测试多个相连字母字母大写时的情况
@Test
public void testWordFormat4DBTogether() {
String target = "employeeAInfo";
String result = WordDealUtil.wordFormat4DB(target); assertEquals("employee_a_info", result);
}
}
深入
常用注解
- @Before
- @After
- @Test
- @Ignore
- @BeforeClass
- @AfterClass
执行顺序
每一个测试方法的调用顺序为:
规范
- 单元测试代码应位于单独的 Source Folder 下
- 测试类应该与被测试类位于同一 package 下
- 选择有意义的测试方法名
- 保存测试的独立性
- 为暂时未实现的测试代码忽略(@Ignore)或抛出失败(fail)
- 在调用断言(assert)方法时给出失败的原因
结束语
单元测试JUnit 4的更多相关文章
- Spring注解AOP及单元测试junit(6)
2019-03-10/20:19:56 演示:将xml配置方式改为注解方式 静态以及动态代理推荐博客:https://blog.csdn.net/javazejian/article/details/ ...
- Java单元测试(Junit+Mock+代码覆盖率)---------转
Java单元测试(Junit+Mock+代码覆盖率) 原文见此处 单元测试是编写测试代码,用来检测特定的.明确的.细颗粒的功能.单元测试并不一定保证程序功能是正确的,更不保证整体业务是准备的. 单元测 ...
- Java学习——单元测试JUnit
Java学习——单元测试JUnit 摘要:本文主要介绍了什么是单元测试以及怎么进行单元测试. 部分内容来自以下博客: https://www.cnblogs.com/wxisme/p/4779193. ...
- Springboot单元测试Junit深度实践
Springboot单元测试Junit深度实践 前言 单元测试的好处估计大家也都知道了,但是大家可以发现在国内IT公司中真正推行单测的很少很少,一些大厂大部分也只是在核心产品推广单测来保障质量,今天这 ...
- java单元测试(Junit)
Eclipse最基本的模块测试 1:首先创建一个java工程,在工程中创建一个被单元测试的Student数据类,如下: package UnitTest; public class Student { ...
- Android:单元测试Junit的配置
在实际开发中,开发android软件的过程需要不断地进行测试.而使用Junit测试框架,侧是正规Android开发的必用技术,在Junit中可以得到组件,可以模拟发送事件和检测程序处理的正确性.... ...
- 面试题_89_to_92_单元测试 JUnit 面试题
89)如何测试静态方法?(答案)可以使用 PowerMock 库来测试静态方法. 90)怎么利用 JUnit 来测试一个方法的异常?(答案) 91)你使用过哪个单元测试库来测试你的 Java 程序?( ...
- Java 单元测试(Junit)
在有些时候,我们需要对我们自己编写的代码进行单元测试(好处是,减少后期维护的精力和费用),这是一些最基本的模块测试.当然,在进行单元测试的同时也必然得清楚我们测试的代码的内部逻辑实现,这样在测试的时候 ...
- JAVA单元测试Junit
1.为什么要用Junit 做了很多项目,几乎没怎么用过Java的单元测试,是因为它没有用吗?显然不是,是自己的开发方式太不规范!对于大型的软件项目,单元测试不仅有效实用,还非常有必要!它能够测试每个方 ...
- Android单元测试Junit (一)
1.在eclips中建立一个Android工程,具体信息如下: 2.配置单元测试环境,打开AndroidManifest.xml,具体代码如下所示: <?xml version="1. ...
随机推荐
- GET 还是 POST?
GET 还是 POST? 与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用. 然而,在以下情况中,请使用 POST 请求: 无法使用缓存文件(更新服务器上的文件或数据库) 向服务器发 ...
- mysql delimiter 存储过程
命令行登录mysql cd /d D:\database\mysql1\bin mysql.exe -P 3306 -h 127.0.0.1 -u root -p USE tbschedule del ...
- 【python】获取网页中中文内容并分词
# -*- coding: utf-8 -*- import urllib2 import re import time import jieba url="http://www.baidu ...
- 如何在ChemDraw 15.1 Pro中添加模板
ChemDraw化学绘图工具为了方便用户的使用,特地开发了众多的各种类型模板.用户在绘制一些简单或复杂的化学结构式时,可以直接从ChemDraw模板库里直接调用使用,虽然ChemDraw模板非常的丰富 ...
- pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- mstsc远程登录设置
mstsc终于可以连上了, 1.系统属性 远程允许, 2.开启三个服务: Remote Desktop ConfigurationRemote Desktop ServicesRemote Deskt ...
- bat脚本中timeStamp解决方案
之前做了个工具包,用了timeStamp做文件名. 一般来说最简单的代码类似于: set timeStamp=%date:/=-%_%time% echo %timeStamp% >2018-0 ...
- 【BZOJ4709】[Jsoi2011]柠檬 斜率优化+单调栈
[BZOJ4709][Jsoi2011]柠檬 Description Flute 很喜欢柠檬.它准备了一串用树枝串起来的贝壳,打算用一种魔法把贝壳变成柠檬.贝壳一共有 N (1 ≤ N ≤ 100,0 ...
- [LintCode] 尾部的零
class Solution { public: // param n : description of n // return: description of return long long tr ...
- 第5章 IDA Pro实验题
Question: 1.DLLMain的地址是什么? 2.使用import窗口并浏览到gethostbyname,导入函数定位到什么位置 3.有多少函数调用了gethostbyname? 4.将精力放 ...