SpringBoot项目的测试类实例解析
这篇文章主要介绍了SpringBoot项目的测试类实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.
package soundsystem; import static org.junit.Assert.*; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(classes=CDPlayerConfig.class) public class CDPlayerTest { @Autowired private CompactDisc cd; @Test public void cdShouldNotBeNull() { assertNotNull(cd); } }
CDPlayerTest使用了Spring的SpringJUnit4ClassRunner,以便在测试开始的时候自动创建Spring的应用上下文。
注解@ContextConfiguration会告诉它需要在CDPlayerConfig中加载配置。
因为CDPlayerConfig类中包含了@ComponentScan,因此最终的应用上下文中应该包含CompactDiscbean。
2.
package com.baizhi.cmfz; import com.baizhi.cmfz.dao.BannerDao; import com.baizhi.cmfz.entiy.Banner; import com.baizhi.cmfz.service.BannerService; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import java.util.Date; import java.util.List; import java.util.Map; @RunWith(SpringRunner.class) @SpringBootTest public class BannerTest { @Autowired private BannerDao dao; @Autowired private BannerService service; @Test public void test1(){ List<Banner> list = dao.selectAllBanner(1,10,null); for (Banner banner : list) { System.out.println(banner); } } }
其中类SpringRunner继承了了SpringJUnit4ClassRunner
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
SpringBoot 单元测试JUnit的使用详解
一.简介 JUnit是一款优秀的开源Java单元测试框架,也是目前使用率最高最流行的测试框架,开发工具Eclipse和IDEA对JUnit都有很好的支持,JUnit主要用于白盒测试和回归测试. 白盒测试:把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人 员是公开的: 回归测试:软件或环境修复或更正后的再测试: 单元测试:最小粒度的测试,以测试某个功能或代码块.一般由程序员来做,因为它需要知道内部程序设计和编码的细节: 二.JUnit使用 1.pom.xml中添加JUnit依赖.
-
SpringBoot2种单元测试方法解析
一 普通测试类 当有一个测试方法的时候,直接运行. 要在方法前后做事情,可以用before或者after. 假如有多个方法运行,则可以选择类进行运行. @RunWith(SpringRunner.class) @SpringBootTest public class TestApplicationTests { @Test public void testOne(){ System.out.println("test hello 1"); TestCase.assertEquals(1
-
在Spring boot的项目中使用Junit进行单体测试
使用Junit或者TestNG可以进行单体测试,这篇文章简单说明一下如何在Spring boot的项目中使用Junit进行单体测试. pom设定 pom中需要添加spring-boot-starter-test <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>
-
SpringBoot DBUnit 单元测试(小结)
DBunit 是一种扩展于JUnit的数据库驱动测试框架,它使数据库在测试过程之间处于一种已知状态,如果一个测试用例对数据库造成了破坏性影响,它可以帮助避免造成后面的测试失败或者给出错误结果. DBunit通过维护真实数据库与数据集(IDataSet)之间的关系来发现与暴露测试过程中的问题.IDataSet 代表一个或多个表的数据.此处IDataSet可以自建,可以由数据库导出,并以多种方式体现,xml文件.XLS文件和数据库查询数据等. 基于DBUnit 的测试的主要接口是IDataSet,可
-
springboot使用单元测试实战
前言 springboot提供了 spirng-boot-starter-test 以供开发者使用单元测试,在引入 spring-boot-starter-test 依赖后: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope>
-
Spring Boot 2.X 快速集成单元测试解析
一.实现原理 使用MockMvc发起请求,然后执行API中相应的代码,在执行的过程中使mock模拟底层数据的返回,最后结果验证. 二.常用注解介绍 @SpringBootTest是SpringBoot的一个用于测试的注解,通过SpringApplication在测试中创建ApplicationContext. @AutoConfigureMockMvc是用于自动配置MockMvc. @RunWith在JUnit中有很多个Runner,他们负责调用你的测试代码,每一个Runner都有各自的特殊功能
-
Spring Boot单元测试中使用mockito框架mock掉整个RedisTemplate的示例
概述 当我们使用单元测试来验证应用程序代码时,如果代码中需要访问Redis,那么为了保证单元测试不依赖Redis,需要将整个Redis mock掉.在Spring Boot中结合mockito很容易做到这一点,如下代码: import org.mockito.Mockito; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration
-
SpringBoot Controller Post接口单元测试示例
概述 在日常的开发中,我们一般会定义一个service层,用于实现业务逻辑,并且针对service层会有与之对应的齐全的覆盖率高的单元测试.而对于controller层,一般不怎么做单元测试,因为主要的核心业务逻辑都在service层里,controller层只是做转发,调用service层接口而已.但是还是建议使用单元测试简单的将controller的方法跑一下,看看转发和数据转换的代码是否能正常工作. 在Spring Boot里对controller层进行单元测试非常简单,只需要几个注解和一
-
如何设置Spring Boot测试时的日志级别
1.概览 该教程中,我将向你展示:如何在测试时设置spring boot 日志级别.虽然我们可以在测试通过时忽略日志,但是如果需要诊断失败的测试,选择正确的日志级别是非常重要的. 2.日志级别的重要性 正确设置日志级别可以节省我们许多时间. 举例来说,如果测试在CI服务器上失败,但在开发服务器上时却通过了.我们将无法诊断失败的测试,除非有足够的日志输出. 为了获取正确数量的详细信息,我们可以微调应用程序的日志级别,如果发现某个java包对我们的测试更加重要,可以给它一个更低的日志级别,比如DEB
-
SpringBoot项目的测试类实例解析
这篇文章主要介绍了SpringBoot项目的测试类实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. package soundsystem; import static org.junit.Assert.*; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autow
-
配置springboot项目使用外部tomcat过程解析
这篇文章主要介绍了配置springboot项目使用外部tomcat过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在pom文件中添加依赖 <!--使用自带的tomcat--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifac
-
Python 元类实例解析
龟叔发明了 Python,然后集成了一堆概念在这门语言里面,比如:迭代器,装饰器,函数,生成器,类,对象,协程等等. 这些概念对初学者似乎没一个好懂的,不过还有比这更难的概念,它是 Python 世界中的造物主,虽然我们很少去直接使用它,但天天都在用,它就是今天的主角------元类. 今天我的任务就是彻底明白什么是元类,一起看看. 要搞懂元类,我们还是先从对象说起. 对象(Object) Python 一切皆对象,这句话你一定有听说过(现在你就听说了),一个数字是对象,一个字符串是对象,一个列
-
springboot日志切面通用类实例详解
1.pom.xml文件导入AOP依赖 <!--aop依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> <version>2.3.0.RELEASE</version> </dependency> 2.pom.xml导入Lombo
-
Springboot项目实现将类从@ComponentScan中排除
目录 将类从@ComponentScan中排除 问题描述 方案一 方案二 方案三 方案四 @ComponentScan 详解 将类从@ComponentScan中排除 问题描述 最近在学习SpringCloud的Ribbon,在使用 @RibbonClient(name = "SPRINGCLOUD-P-DEPT", configuration = RibbonConfig.class) 为服务指定负载均衡策略的时候,根据Ribbon官方文档介绍,自定义的Ribbon配置类不允许被Sp
-
Redis整合SpringBoot的RedisTemplate实现类(实例详解)
Redis整合SpringBoot>>RedisService 接口 package com.tuan.common.base.redis; import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.TimeUnit; public interface RedisService { //Redis 字符串(String) /** * 模糊值再删除 * @param
-
C++日志记录类实例解析
本文所述实例是从一个Red Hat开源项目里面扒出来的,非常实用!读者还可以根据自身需求加以修改!完整源码如下: Log.h文件部分: #ifndef __LOG_H__ #define __LOG_H__ #include <stdio.h> #include <tchar.h> #include <crtdbg.h> #include <windows.h> #include <time.h> #include <sys/timeb.h
-
C#之Socket操作类实例解析
本文展示了一个C#的Socket操作类的完整实例,并附带了用法说明,分享给大家供大家参考之用.具体方法如下: 主要功能代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Collections; using System.Net; using System.Runtime.Serializ
-
SpringBoot定时任务参数运行代码实例解析
@Scheduled注解各参数详解 cron 该参数接收一个cron表达式,cron表达式是一个字符串,字符串以5或6个空格隔开,分开共6或7个域,每一个域代表一个含义. cron表达式语法 [秒] [分] [小时] [日] [月] [周] [年] 注:[年]不是必须的域,可以省略[年],则一共6个域 序号 说明 必填 允许填写的值 允许的通配符 1 秒 是 0-59 , - * / 2 分 是 0-59 , - * / 3 时 是 0-23 , - * / 4 日 是 1-31 , - *
-
springBoot项目如何实现启动多个实例
springBoot项目启动多个实例 今天碰到一个需求是,将一个服务提供者启动两个实例,一个实例对外,一个实例对内,对内价格有折扣,两个实例通过指定不停的profile来区分,要求是不能改造为两个服务提供者,于是我就焦灼了,知道是配置不同的配置文件,但是却是不知道怎么同时启动两个实例.在网上找来找去,稀里糊涂的弄好了......... 下面附上具体的做法: 根据我的业务需求,我要在配置文件中配置一个折扣, 起名为: discount .然后根据启动不同的配置文件中从,controller中取得该
随机推荐
- Lua中string.len()使用指南
- JS的encodeURI和java的URLDecoder.decode使用介绍
- 详谈JavaScript 匿名函数及闭包
- PHP和MYSQL实现分页导航思路详解
- Python 类与元类的深度挖掘 I【经验】
- 探讨如何计算age的sql函数
- form表单action提交的js部分与html部分
- SpringBoot之Controller的使用详解
- jQuery弹出框代码封装DialogHelper
- 微信小程序 图片上传实例详解
- jQuery动态增减行的实例代码解析(推荐)
- JQuery中Text方法用法实例分析
- 基于C#的电视台节目表接口调用代码
- Windows服务器下升级PHP版本的方法
- Apache 文件根目录设置修改方法 (Document Root)
- 执行、获取远程代码返回:file_get_contents 超时处理的问题详解
- Java中EnumSet代替位域代码详解
- 深踩Android Studio 缓存的坑及解决方法
- Nginx端口映射配置方法
- vue 界面刷新数据被清除 localStorage的使用详解