Junit 4 Tutorials(Junit 4 教程) 四、Junit4 参数化测试

2024-05-12 04:48

本文主要是介绍Junit 4 Tutorials(Junit 4 教程) 四、Junit4 参数化测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Junit 4 参数化测试 允许通过变化范围的参数值来测试方法。参数擦测试可以通过以下简单的步骤实现:
  1. 对测试类添加注解 @RunWith(Parameterized.class)
  2. 将需要使用变化范围参数值测试的参数定义为私有变量
  3. 使用上一步骤声明的私有变量作为入参,创建构造函数
  4. .创建一个使用@Parameters注解的公共静态方法,它将需要测试的各种变量值通过集合的形式返回。
  5. 使用定义的私有变量定义测试方法

Junit 4 参数化测试样例

EvenNumberChecker.java 校验输入的数字是否为偶数:

package in.co.javatutorials;/**
* @author javatutorials.co.in
*/
public class EvenNumberChecker {/*** Is input number even.** @param i input number* @return <code>true</code> if input is even number; otherwise return false*/public boolean isEven(int i) {if (i % 2 == 0) {return true;} else {return false;}}
}

EvenNumberCheckerTest.java 对 EvenNumberChecker.java 进行参数化测试:

package in.co.javatutorials;import static org.junit.Assert.*;import java.util.Arrays;
import java.util.Collection;import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;/**
* @author javatutorials.co.in
*/
// Step 1
@RunWith(Parameterized.class)
public class EvenNumberCheckerTest {// Step 2: variables to be used in test method of Step 5private int inputNumber;private boolean isEven;// Step 3: parameterized constructorpublic EvenNumberCheckerTest(int inputNumber, boolean isEven) {super();this.inputNumber = inputNumber;this.isEven = isEven;}// Step 4: data set of variable values@Parameterspublic static Collection<Object[]> data() {Object[][] data = new Object[][] {{ 2, true },{ 5, false },{ 10, false }};return Arrays.asList(data);}@Testpublic void test() {System.out.println("inputNumber: " + inputNumber + "; isEven: " + isEven);EvenNumberChecker evenNumberChecker = new EvenNumberChecker();// Step 5: use variables in test codeboolean actualResult = evenNumberChecker.isEven(inputNumber);assertEquals(isEven, actualResult);}
}

 样例输出

       在Eclipse junit 窗口的输出为:

      


      样例日志输出

inputNumber: 2; isEven: true
inputNumber: 5; isEven: false
inputNumber: 10; isEven: false


源码下载

点击我下载源码

教程目录导航

  • Junit测试框架介绍
  • Junit Eclipse教程
  • Junit 4注解
  • Junit 4断言方法(Assert methods
  • Junit 4参数化测试
  • Junit 4测试套件(Test Suite)
  • Junit 4忽略测试(Ignore Test)
  • Junit 4超时测试(Timeout Test


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

本文出处为 http://blog.csdn.net/luanlouis,转载请注明出处,谢谢!

这篇关于Junit 4 Tutorials(Junit 4 教程) 四、Junit4 参数化测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/981639

相关文章

使用Nginx来共享文件的详细教程

《使用Nginx来共享文件的详细教程》有时我们想共享电脑上的某些文件,一个比较方便的做法是,开一个HTTP服务,指向文件所在的目录,这次我们用nginx来实现这个需求,本文将通过代码示例一步步教你使用... 在本教程中,我们将向您展示如何使用开源 Web 服务器 Nginx 设置文件共享服务器步骤 0 —

Golang使用minio替代文件系统的实战教程

《Golang使用minio替代文件系统的实战教程》本文讨论项目开发中直接文件系统的限制或不足,接着介绍Minio对象存储的优势,同时给出Golang的实际示例代码,包括初始化客户端、读取minio对... 目录文件系统 vs Minio文件系统不足:对象存储:miniogolang连接Minio配置Min

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

详解Spring Boot接收参数的19种方式

《详解SpringBoot接收参数的19种方式》SpringBoot提供了多种注解来接收不同类型的参数,本文给大家介绍SpringBoot接收参数的19种方式,感兴趣的朋友跟随小编一起看看吧... 目录SpringBoot接受参数相关@PathVariable注解@RequestHeader注解@Reque

Java向kettle8.0传递参数的方式总结

《Java向kettle8.0传递参数的方式总结》介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValu... 目录1.传递参数到转换中2.传递参数到作业中总结1.传递参数到转换中1.1. 通过设置Trans的

java如何调用kettle设置变量和参数

《java如何调用kettle设置变量和参数》文章简要介绍了如何在Java中调用Kettle,并重点讨论了变量和参数的区别,以及在Java代码中如何正确设置和使用这些变量,避免覆盖Kettle中已设置... 目录Java调用kettle设置变量和参数java代码中变量会覆盖kettle里面设置的变量总结ja

Linux下MySQL8.0.26安装教程

《Linux下MySQL8.0.26安装教程》文章详细介绍了如何在Linux系统上安装和配置MySQL,包括下载、解压、安装依赖、启动服务、获取默认密码、设置密码、支持远程登录以及创建表,感兴趣的朋友... 目录1.找到官网下载位置1.访问mysql存档2.下载社区版3.百度网盘中2.linux安装配置1.