gradle安装单元测试坎坷历程
参考,欢迎点击原文:https://blog.csdn.net/qq_42815122/article/details/85395111(灵感)
自己写的用户系统要加上单元测试,加就加吧,跟着网上的好几篇文章都走不通,会报错。but公司的项目却能够很直接的执行成功,再多次尝试百度找到解决办法无果后,决定照着公司的项目慢慢改和摸索了
开始时候写ServiceTest时候上面两个注解没有,需要引入测试包
// test
testImplementation group: 'junit', name: 'junit', version: '4.12'
@RunWith(SpringRunner.class)
@SpringBootTest(classes = Application.class, webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
注解成功引入。
接下来直接执行我写的test方法吧,发现报错,如下图

这个是没有找到test工具吧,于是百度,好几个说把这边gradle的test改成idea的test就好了,我改了

再跑下继续报错,如下图

这就是启动框架时候出问题了,这不问题更大么,算了我还是照着公司项目走吧,使用gradle跑单元测试,继续回归本源看build.gradle,发现底下的测试调用的方法不能点,而公司的项目可以点

看了公司项目如果使用gradle跑单元测试的话会使用gradle/wrapper/gradle-wrapper.properties,这里面写的是下图

就是定义了使用哪里的gradle和gradle的版本,我想换成公司的gradle版本4.1让这个方法可以点,然后再跑下,提示英文跟我的springboot2.6.6版本不兼容,好吧,不改这个gradle-wrapper.properties了
然后继续百度看文章有没有些灵感,看到可以把底下的改成下图这个形式,发现可以点了
先保留吧
接着继续跑下测试,还是报之前那个错

想了想test没有找到,难道是@Test注解出了问题?对比下公司项目,果然引错了

我把改成了import org.junit.jupiter.api.Test; 继续跑,继续报错,如下图

虽然报错信息很多,我也看不了这么多,最后有个链接,我点开发现有个网页专门用来显示你的测试的,如下图

我点开这个方法的报错详情,继续百度,看到一个小哥文章提示的很好,说就看Caused by 后面的东西,看了后我发现说

抛异常除了问题,因为我是用的是公司包的抛异常,所以这块是很让人纠结的,是公司包的抛异常出来了,还是就是公司包抛异常除了问题,emmm死马当活马医,看下公司的包,发现compileOnly,只在编码的时候生效,这不行啊,我这是测试阶段啊,要放出来,于是改成了implementation。

再试下,可以了
总结:gradle更熟练会少很多事
下图总结图

gradle安装单元测试坎坷历程的更多相关文章
- Android studio下gradle Robolectric单元测试配置
android studio下gradle Robolectric单元测试配置 1.Robolectric Robolectric是一个基于junit之上的单元测试框架.它并不依赖于Android提供 ...
- Gradle安装
最近在学Android,而Android是由Gradle来构建的:Gradle是一个基于 JVM 的构建工具.所以开始学习Android之前,先进行Gradle安装与学习: mac: 使用SDKMAN ...
- 安装IDEA的历程
安装IDEA的历程 写这篇博客的主要目的就是记录自己安装IDEA的"复杂"过程,顺便给一些需要帮助的人提供一些帮助,以及让他们可以少走一些弯路.之所以说"复杂" ...
- Gradle安装 Gradle效率提升 eclipse安装gradle插件 【我】
Gradle安装 从官网下载 gradle4.6版本,也可以从svn地址下载 https://downloads.gradle.org/distributions/gradle-4.6-bin.zip ...
- SpringBoot25 gradle安装、利用gradle创建SrpingBoot项目
1 gradle安装 技巧01:gradle依赖JDK或者JRE,而且版本至少时1.7 1.1 下载安装包 到gradle官网下载安装包[PS: 也可以利用命令的方式安装,本案例是利用安装包的方式] ...
- Gradle 安装(Windows)
一.Gradle 简介 1.1 什么是 Gradle? Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的 项目自动化构建开源工具.它使用一种基于Groovy的D ...
- [Android] Gradle 安装
Gradle安装非常简单,只要从官网下载压缩包,解压,修改一下环境变量即可. 笔者写本篇随笔时,版本是1.12. Windows下安装 1 到官网(http://www.gradle.org/down ...
- Gradle 安装
Gradle介绍 Gradle是一个基于JVM的构建工具,它提供了: 像Ant一样,通用灵活的构建工具 可以切换的,基于约定的构建框架 强大的多工程构建支持 基于Apache Ivy的强大的依赖管理 ...
- 最新版gradle安装使用简介
目录 简介 安装gradle和解决gradle安装的问题 Gradle特性 标准task Build phases Gradle Wrapper wrapper的使用 wrapper的升级 一个简单的 ...
- Android学习记录(二)——第一次hello world及遇到的gradle安装问题
开始一个简单的hello world项目,简单了解Android studio的使用方法 第一步,打开Android studio,点击Create New Project 第二步,选择需要的模板 T ...
随机推荐
- 201871010111-刘佳华 实验二 个人项目—《D[01]背包问题》项目报告
实验二 软件工程个人项目 ========== 时间:2021-3-18 项目 内容 课程班级博客链接 课程链接 这个作业要求链接 作业要求 我的课程学习目标 1.了解软件工程过程中个人项目的开发流程 ...
- 当我们在谈 .NET Core 跨平台时,我们在谈些什么?--学习笔记
摘要 .NET Framework在过去十多年在跨平台上的尝试. .NET Core跨平台的实现有何不同? 基于 .NET Standard的平台兼容性是如何实现的? 讲师介绍 历史枷锁 .NET F ...
- 使用 lspci 和 setpci 调试 PCIe 问题
lspci 命令和 setpci 命令均为 Linux 发行版中原生可用的命令. 这 2 条命令均可提供多级输出,适合在不同时间点用于查看 PCI 总线上训练的不同组件的功能和状态.其中大部分功能均可 ...
- 当我忘记SQL怎么写的时候,我……
当我忘记SQL怎么写的时候,我-- 以往的我,打开电脑百度一番,打开笔记查询一轮,发现没找到我最想要的 不要慌,问题不大 后来发现MySQL本身就带有帮助文档. 于是我一顿操作:win+R >& ...
- JLink OB相关的一些记录
使用 STM32F103 Bluepill 制作 JLink OB https://github.com/GCY/JLINK-ARM-OB https://stm32duinoforum.com/fo ...
- 配置主机访问virtualbox中redhat7.3虚拟机网络(其他系统配置也类似)
为什么默认无法访问? virtualbox默认分配一个NAT网络,这个是给虚拟机操作系统访问互联网用的,默认主机通过这个ip段无法直接访问虚拟机.[网卡1] 需要添加一块网卡 在虚拟机关闭状态下,点[ ...
- Unity学习笔记--数据持久化Json
JSON相关 json是国际通用语言,可以跨平台(游戏,软件,网页,不同OS)使用, json语法较为简单,使用更广泛.json使用键值对来存储. 认识json文件 //注意字典类型存储时,键是以st ...
- pwd模块
# pwd模块提供了获取UNIX平台用户的账户与密码信息(通过文件/etc/passwd),在所有的UNIX版本平台都可以用. # pwd模块返回的是一个类似元组的对象,该对象的各个属性对应于pass ...
- CGI, FastCGI, WSGI, uWSGI, uwsgi一文搞懂
中间件 1.服务器中间件:nginx,apache 2.数据库中间件:介于应用程序和数据库之前的,MyCat 3.消息队列中间件:kafka,rabbitmq,Rocketmq CGI 1.CGI是一 ...
- vue upload 图片转base64、转二进制数组,保存编码数据到文件
功能需求 1.图片转base64 2.base 64 转二进制数组 3.保存二进制数据到文件下载到本地 解决方法 问题1: 参考资料 vue element upload图片 转换成base64 具体 ...