JUNIT代码的一种编写方式

我用的是Junit4,编写如下基类
java 代码
 
  1. import java.io.IOException;  
  2. import java.io.InputStream;  
  3. import java.util.InvalidPropertiesFormatException;  
  4. import java.util.Properties;  
  5.   
  6. import org.springframework.test.AbstractTransactionalDataSourceSpringContextTests;  
  7.   
  8. public abstract class SpringBaseTestCase extends AbstractTransactionalDataSourceSpringContextTests {  
  9.   
  10.     protected Properties properties;  
  11.   
  12.     public void onSetUpInTransaction() throws InvalidPropertiesFormatException, IOException {  
  13.         properties = new Properties();  
  14.         InputStream is = ClassLoader.getSystemResourceAsStream(getTestFixturePropertyFile());  
  15.         if (is != null) properties.loadFromXML(is);  
  16.         loadSet();  
  17.     }  
  18.   
  19.     private String getTestFixturePropertyFile() {  
  20.         return getClass().getSimpleName() + ".xml";  
  21.     }  
  22.   
  23.     protected void loadSet() {  
  24.         // String test = properties.getProperty(this.getName() + "_pid");  
  25.     }  
  26.   
  27.     @Override  
  28.     protected String[] getConfigLocations() {  
  29.         return new String[] { "applicationContext-hibernate.xml" };  
  30.     }  
  31. }  

子类:
java 代码
 
  1. import org.junit.Test;  
  2.   
  3. import basic.SpringBaseTestCase;  
  4. import basic.User;  
  5.   
  6. public class PointsDaoImplTest extends SpringBaseTestCase {  
  7.   
  8.     private IPointsDao pd;  
  9.     private int pidx;  
  10.     private int points;  
  11.     private int lockPoints;  
  12.     private int activePoints;  
  13.   
  14.     public void loadSet() {  
  15.         pd = (IPointsDao) applicationContext.getBean("pointsDao");  
  16.         pidx = Integer.valueOf(properties.getProperty(getName() + "_userPidx"));  
  17.         setUser();  
  18.     }  
  19.   
  20.     private void setUser() {  
  21.         User user = new User();  
  22.         user.setPidx(String.valueOf(pidx));  
  23.         pd.setUser(user);  
  24.     }  
  25.   
  26.     @Test(expected = java.lang.IllegalArgumentException.class)  
  27.     public void testSetUserIllArgument() {  
  28.         pd.setUser(null);  
  29.     }  

数据文件:
xml 代码
 
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">  
  3.   
  4. <properties>  
  5.     <!-- testSetUser -->  
  6.     <entry key="testSetUserIllArgument_userPidx">12</entry>  
  7.     <entry key="testSetUserIllArgument_points">20</entry>  
  8.     <!-- testGetUserPoints -->  
  9.     <entry key="testGetUserPoints_userPidx">13</entry>  
  10.     <entry key="testGetUserPoints_points">44</entry>  
基于JUnit4和JUnit5配合例子讲解JUnit的两种运行方式 本文基于不同的JUnit版本(4和5)分别介绍了JUnit的两种不同使用方式—手工和Maven,通过代码的方式可以看出JUnit 5的包结构发生了改变,能帮助初学者入门JUnit 框架的使用和代码阅读。若想对JUnit 更深入了解,推荐阅读文献2。↩︎↩︎↩︎↩︎。 阅读详情

相关推荐

JUnit是什么?

JUnit是一个开发源代码的Java测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系xUnit的一个实例(用于java语言)。它包括以下特性: 1、用于测试期望结果的断言(Assertion) 2、用于共享共同测试数据的测试工具 3、用于方便的组织和运行测试的测试套件 4、图形和文本的测试运行器 JUnit最初是由Erich Gamma(GoF之一)和Kent B

ArduousBonze的专栏 6576

Junit单元测试

JUnit是Java中最流行的单元测试框架之一。它提供了一组注解和断言方法,用于编写和执行单元测试。单元测试是针对代码的最小可测试单元(通常是方法或类)的自动化测试。使用JUnit,开发者可以创建测试类,其中包含用于测试被测代码的测试方法。这些测试方法使用JUnit提供的断言方法来验证代码的行为是否符合预期。在运行测试时,JUnit会自动执行这些测试方法,并报告测试结果。

Gold_Medal的博客 1195

JUnit库的使用与测试用例编写指南

JUnit是Java编程语言中的一款单元测试框架。自2003年起,JUnit被广泛应用于软件开发中,成为了单元测试的行业标准。它允许开发者编写可重复的测试代码,以便能够快速验证软件各个模块的功能是否正常。JUnit通过注解(Annotations)、断言(Assertions)和测试运行器(Test Runners)等功能,极大地方便了开发者的测试工作。单元测试是指对软件中最小可测试单元进行检查和验证的过程。在面向对象的编程中,单元通常是指一个类或者一个方法。

weixin_42581003的博客 1026

JUnit编写测试

JUnit编写测试 我们将在这一章列出一个代码类是如何被测试的。 编写被测试类 在此我们编写被测试的JavaBean。 package test.BaseTest; public class Student { private String name; private double grade; private int age; public String getName() { return name; } public void se

qq_56403015的博客 1726

CoaXPress FMC子卡:高速图像采集与FPGA原型开发实战指南

在机器视觉和工业检测领域,高速、可靠的数据传输是核心需求。CoaXPress(CXP)协议作为一种基于同轴电缆的高速接口标准,通过其高带宽、长距离传输和低延迟的特性,有效解决了传统接口在确定性实时传输方面的短板。其技术价值在于为海量图像数据提供了稳定、高效的物理层和数据链路层解决方案,广泛应用于半导体检测、医疗成像等对吞吐量有极致要求的场景。要实现CXP系统的快速原型验证,集成了高速SerDes接口和时钟管理的FMC子卡与FPGA开发板的组合成为关键。这种平台将复杂的硬件设计封装,让开发者能聚焦于图像处理算

weixin_31815843的博客 278

django drf 框架知识点(一)——serializer序列化器_用法全解

【django drf】序列化器:别名设置,全部参数序列化,自定义字段,只读只写,部分更新

qq_59344127的博客 1338

JUnit测试代码如何写?(代码分析)

JUnit测试代码如何写?(代码分析)

weixin_45428910的博客 872

抖音a_bogus参数逆向避坑指南:从环境检测到XHR请求的全流程解析

本文详细解析了抖音a_bogus参数在v1.0.1.19版本下的逆向工程全流程,重点介绍了如何通过PyV8Env框架进行有效的补环境操作,以绕过严格的环境检测。内容涵盖从环境初始化、关键事件触发到模拟XHR请求获取签名的完整步骤,并提供了可运行的Python代码示例和常见检测点的避坑指南,帮助开发者稳定生成有效的a_bogus参数。

tech5的博客 600

Junit实训入门篇代码

通常我们写完代码想要测试这段代码的正确性,那么必须新建一个类,然后创建一个main()方法,之后再编写测试代码。如果需要测试的代码很多呢?那么要么就会建很多main()方法来测试,要么将其全部写在一个main()方法里面。这也会大大的增加测试的复杂度,降低程序员的测试积极性。而 Junit 能很好的解决这个问题,简化单元测试,写一点测一点,在之后的代码改动中如果发现问题可以较快的追踪到问题的原因,减小回归错误的纠错难度。

Palpitate233的博客 1864

Allegro如何导出和导入器件模型Signal_Model操作指导

在用Allegro做PCB设计的时候,通常需要给器件加上Signal_Model,在做等长的时候用到的非常频繁。如下图,需要把R7002的Signal_Model导入到另外一块没有给R7002加好模型的BRD中。Allegro除了可以给器件添加模型,还支持从一块加好模型的BRD导入到另外一块BRD中,如何导出和导入器件模型Signal_Model操作指导。

weixin_54787054的博客 1896

渗透测试面试题

渗透测试面试题 一.思路流程 1.信息收集 服务器的相关信息(真实ip,系统类型,版本,开放端口,WAF等) 网站指纹识别(包括,cms,cdn,证书等),dns记录 whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等) 子域名收集,旁站,C段等 google hacking针对化搜索,pdf文件,中间件版本,弱口令扫描等 扫描网站目录结构,爆后台,网站banner,测试文件,...

千寻的博客 12万+

超级详细的Junit单元测试教程

如果你只会使用@Test来完成单元测试,那你是时候该深入一下了,其实知识点一点都不少!

奈何的人生 10万+

视觉SLAM十四讲slambook2示例代码所有依赖库的编译安装教程(VTK、OpenCV3、ceres、Sophus、g2o、Eigen、Pangolin、googletest等)

这是2021年的最后一篇博客~ 新年快乐! 0 准备工作   首先需要先安装cmake编译器: sudo apt-get install cmake   以及,将十四讲的示例代码克隆下来(十四讲的源码地址点击这里): git clone --recursive https://github.com/gaoxiang12/slambook2.git   由于里面的3rdparty文件夹内所有内容都来自于其他github仓库,所以需要加上--recursive参数,不然克隆下来的内容不完整。   如果你.

zeeq的博客 7839

junit 测试似有方法_使用 JUnit 进行单元测试 - 教程

使用 JUnit 进行单元测试 - 教程JUnit该教程主要讲解 JUnit 4.x 版本的使用,以及如何在Eclipse IDE 中如何使用JUnit目录1. Junit介绍 31. Junit介绍1.1. 简介JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒...

weixin_34932795的博客 656

Open3D 机载点云电力线提取【2025最新版】

传统方法实现的机载点云电力线分割提取。博客长期更新,本文最新更新时间为:2025年3月23日。

点云侠的博客 4468

SAP 物料的与压缩库存数据不一致

总结:发生这个问题的原因多数会发生在测试系统在拷贝正式系统的时候会发生这样的情况,系统在拷贝的时候,业务数据还在发生,就会导致数据拷贝的时候丢失数据。经过查询发现是由于物料分类账中的物料的库存数量和 ACDOCA_M_EXTRACT表中的数量对不上,导致系统抛出报错的信息。由于是测试系统,直接更改表的数据,把ACDOCA_M_EXTRACT表中的库存数据和金额与物料分类账中的数据保持一致。在测试系统中进行501和561增加库存的时候,系统提示物料的预压缩库存数据不一致的报错。

我小时候很黑的博客 3303

JUnit 中设计模式的分析一

1  JUnit测试框架简介 一个开源的java测试框架,它是Xuint测试体系架构的一种实现。在JUnit单元测试框架的设计时,设定了三个总体目标,第一个是简化测试的编写,这种简化包括测试框架的学习和实际测试单元的编写;第二个是使测试单元保持持久性;第三个则是可以利用既有的测试来编写相关的测试。所以这些目的也为什么使用模式的根本原因。

清一的专栏 723

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JUnit编写测试用例

JUnit编写单元测试 文章目录JUnit编写单元测试JUnit介绍和导入JUnit编写UT示例JUnit编写UT规范JUnit4注解JUnit断言JUnit套件测试JUnit参数化测试JUnit超时测试 JUnit介绍和导入 JUnit是Java语言开源的单元测试框架,目前最新的版本是JUnit5 在pom.xml文件中添加junit4依赖 <!-- https://mvnrepository.com/artifact/junit/junit --> <dependency>

Maple的博客 8758

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

编写junit 测试_编写JUnit测试的另一种方法(Jasmine方法)

编写junit 测试 最近,我为一个小型个人项目编写了很多Jasmine测试。 我花了一些时间才终于感到正确地完成了测试。 在此之后,当切换回JUnit测试时,我总是很难过。 由于某种原因,JUnit测试不再那么好,我想知道是否有可能以类似于Jasmine的方式编写JUnit测试。 Jasmine是一个受RSpec (Ruby BDD测试框架)启发的流行JavaScript行为驱动开发测试...

最佳 Java 编程 161

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

JUnit教程:设置,编写和运行Java单元测试(附示例代码)

今天,我们将返回简短的(但并非少用的!)JUnit教程之一,它有关如何设置、编写和运行JUnit测试的单元测试基础知识。什么是JUnit,如何入门? 理解基础知识,并像本教程的专业版一样扩展您的单元测试实践。 什么是单元测试? 但是在深入探讨JUnits之前,让我们先讨论一下单元测试和回归测试以及它们为什么如此重要。我们将继续介绍一些很好的例子。 单元测试是白盒测试的一种形式,其中测试用例基于内部结构。测试人员选择输入以探索特定路径,并确定适当的输出。单元测试的目的是检查单个组件或方法/类...

Pokemogo的博客 2542

JUnit简述

JUnit是什么?JUnit是一个开发源代码的Java测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系xUnit的一个实例(用于java语言)。它包括以下特性:1、用于测试期望结果的断言(Assertion)2、用于共享共同测试数据的测试工具3、用于方便的组织和运行测试的测试套件4、图形和文本的测试运行器JUnit最初是由Erich Gamma(GoF之一)和Kent Beck(

键者天行 7268

Junit,运行 ~ 代码方式

Junit,了解Junit运行的原理,通过代码方式运行测试案例

Java博客 1032

编写JUnit测试的另一种方法(Jasmine方法)

最近,我为一个小型个人项目编写了很多Jasmine测试。 我花了一些时间才终于感到正确地完成了测试。 此后,当我切换回JUnit测试时,我总是很难过。 出于某种原因,JUnit测试不再那么好,我想知道是否有可能以类似于Jasmine的方式编写JUnit测试。 Jasmine是受RSpec (Ruby BDD测试框架)启发的流行JavaScript行为驱动开发测试框架。 一个简单的茉莉...

最佳 Java 编程 362

junit5_编写JUnit测试的另一种方法(Jasmine方法)

junit5 最近,我为一个小型个人项目编写了许多Jasmine测试。 我花了一些时间才终于感到正确地完成了测试。 此后,当我切换回JUnit测试时,我总是很难过。 由于某种原因,JUnit测试不再那么好,我想知道是否有可能以类似于Jasmine的方式编写JUnit测试。 Jasmine是受RSpec (Ruby BDD测试框架)启发而流行JavaScript行为驱动开发测试框架。 一个简单...

cunfen6312的博客 128

springboot使用Mockito和Junit进行测试代码编写

"Mockito + junit + springboot" 搞定UT用例的复杂场景数据模拟。

weixin_41501825的博客 2352

junit 继承_因子测试代码无继承的junit 5方式

junit 继承You write Java code, hence you write JUnit tests. Easy. But you write Java code with Spring, and testing is now getting complicated. However, you can work it out: you’re not the only one, ther...

weixin_26716079的博客 611
上一篇: 解决XFire与Spring2的不兼容问题
下一篇: Log4j.xml一例
flyingjava
博客等级 码龄20年 9粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值