参考,欢迎点击原文: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安装单元测试坎坷历程的更多相关文章

  1. Android studio下gradle Robolectric单元测试配置

    android studio下gradle Robolectric单元测试配置 1.Robolectric Robolectric是一个基于junit之上的单元测试框架.它并不依赖于Android提供 ...

  2. Gradle安装

    最近在学Android,而Android是由Gradle来构建的:Gradle是一个基于 JVM 的构建工具.所以开始学习Android之前,先进行Gradle安装与学习: mac: 使用SDKMAN ...

  3. 安装IDEA的历程

    安装IDEA的历程 写这篇博客的主要目的就是记录自己安装IDEA的"复杂"过程,顺便给一些需要帮助的人提供一些帮助,以及让他们可以少走一些弯路.之所以说"复杂" ...

  4. Gradle安装 Gradle效率提升 eclipse安装gradle插件 【我】

    Gradle安装 从官网下载 gradle4.6版本,也可以从svn地址下载 https://downloads.gradle.org/distributions/gradle-4.6-bin.zip ...

  5. SpringBoot25 gradle安装、利用gradle创建SrpingBoot项目

    1 gradle安装 技巧01:gradle依赖JDK或者JRE,而且版本至少时1.7 1.1 下载安装包 到gradle官网下载安装包[PS: 也可以利用命令的方式安装,本案例是利用安装包的方式] ...

  6. Gradle 安装(Windows)

    一.Gradle 简介 1.1 什么是 Gradle?   Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的 项目自动化构建开源工具.它使用一种基于Groovy的D ...

  7. [Android] Gradle 安装

    Gradle安装非常简单,只要从官网下载压缩包,解压,修改一下环境变量即可. 笔者写本篇随笔时,版本是1.12. Windows下安装 1 到官网(http://www.gradle.org/down ...

  8. Gradle 安装

    Gradle介绍 Gradle是一个基于JVM的构建工具,它提供了: 像Ant一样,通用灵活的构建工具 可以切换的,基于约定的构建框架 强大的多工程构建支持 基于Apache Ivy的强大的依赖管理 ...

  9. 最新版gradle安装使用简介

    目录 简介 安装gradle和解决gradle安装的问题 Gradle特性 标准task Build phases Gradle Wrapper wrapper的使用 wrapper的升级 一个简单的 ...

  10. Android学习记录(二)——第一次hello world及遇到的gradle安装问题

    开始一个简单的hello world项目,简单了解Android studio的使用方法 第一步,打开Android studio,点击Create New Project 第二步,选择需要的模板 T ...

随机推荐

  1. 201871010111-刘佳华 实验二 个人项目—《D[01]背包问题》项目报告

    实验二 软件工程个人项目 ========== 时间:2021-3-18 项目 内容 课程班级博客链接 课程链接 这个作业要求链接 作业要求 我的课程学习目标 1.了解软件工程过程中个人项目的开发流程 ...

  2. 当我们在谈 .NET Core 跨平台时,我们在谈些什么?--学习笔记

    摘要 .NET Framework在过去十多年在跨平台上的尝试. .NET Core跨平台的实现有何不同? 基于 .NET Standard的平台兼容性是如何实现的? 讲师介绍 历史枷锁 .NET F ...

  3. 使用 lspci 和 setpci 调试 PCIe 问题

    lspci 命令和 setpci 命令均为 Linux 发行版中原生可用的命令. 这 2 条命令均可提供多级输出,适合在不同时间点用于查看 PCI 总线上训练的不同组件的功能和状态.其中大部分功能均可 ...

  4. 当我忘记SQL怎么写的时候,我……

    当我忘记SQL怎么写的时候,我-- 以往的我,打开电脑百度一番,打开笔记查询一轮,发现没找到我最想要的 不要慌,问题不大 后来发现MySQL本身就带有帮助文档. 于是我一顿操作:win+R >& ...

  5. JLink OB相关的一些记录

    使用 STM32F103 Bluepill 制作 JLink OB https://github.com/GCY/JLINK-ARM-OB https://stm32duinoforum.com/fo ...

  6. 配置主机访问virtualbox中redhat7.3虚拟机网络(其他系统配置也类似)

    为什么默认无法访问? virtualbox默认分配一个NAT网络,这个是给虚拟机操作系统访问互联网用的,默认主机通过这个ip段无法直接访问虚拟机.[网卡1] 需要添加一块网卡 在虚拟机关闭状态下,点[ ...

  7. Unity学习笔记--数据持久化Json

    JSON相关 json是国际通用语言,可以跨平台(游戏,软件,网页,不同OS)使用, json语法较为简单,使用更广泛.json使用键值对来存储. 认识json文件 //注意字典类型存储时,键是以st ...

  8. pwd模块

    # pwd模块提供了获取UNIX平台用户的账户与密码信息(通过文件/etc/passwd),在所有的UNIX版本平台都可以用. # pwd模块返回的是一个类似元组的对象,该对象的各个属性对应于pass ...

  9. CGI, FastCGI, WSGI, uWSGI, uwsgi一文搞懂

    中间件 1.服务器中间件:nginx,apache 2.数据库中间件:介于应用程序和数据库之前的,MyCat 3.消息队列中间件:kafka,rabbitmq,Rocketmq CGI 1.CGI是一 ...

  10. vue upload 图片转base64、转二进制数组,保存编码数据到文件

    功能需求 1.图片转base64 2.base 64 转二进制数组 3.保存二进制数据到文件下载到本地 解决方法 问题1: 参考资料 vue element upload图片 转换成base64 具体 ...