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 ...
随机推荐
- ProTab(高级表格)的使用
一. params 和 request 属性的使用 例子如下: import React, { useState } from 'react'; import { ProTable } from '@ ...
- Leetcode刷题第一天-贪心
455-分饼干 链接:455. 分发饼干 - 力扣(LeetCode) 优先使用最小饼干满足最小胃口,一个娃只能分一个饼干T_T不能加 1 class Solution: 2 def findCont ...
- 七款云上共享文件系统 POSIX 兼容性大比拼
当用户在进行文件系统选型时,POSIX 语义兼容性是必不可缺的一项考察指标.JuiceFS 一直非常重视对 POSIX 标准的高度兼容,在持续完善功能.提高性能的同时,尽力保持最大程度的 POSIX ...
- Linux反空闲的设置和关闭
有一定工作经验的运维人基本都会遇到这样的场景,某个窗口自动断开了,提示超时: [oracle@jystdrac1 ~]$ timed out waiting for input: auto-logou ...
- NC51097 Parity game
题目链接 题目 题目描述 Now and then you play the following game with your friend. Your friend writes down a se ...
- Codeforces Round #824 (Div. 2) A-E
比赛链接 A 题解 知识点:贪心,数学. 注意到三段工作时间一共 \(n-3\) 天,且天数实际上可以随意分配到任意一段,每段至少有一天,现在目的就是最大化段差最小值. 不妨设 \(l_1<l_ ...
- Python subProcess库以及Popen类的使用
subprocess库是一个十分强大且常用的库,它可以用来调用第三方工具(例如:exe.另一个python文件.命令行工具). 1.常用函数call() :执行由参数提供的命令,把数组作为参数运行命令 ...
- SATA 中ATA与AHCI的区别
SATA中ATA和AHCI有什么区别? 1.ACHI是针对SATA2设计的,可以卡其NCQ功能,表面上没有速度的优势,但是因为算法不同,可以有效的保护硬盘.ATA 是硬件模拟IDE的一种方法.表面 ...
- 51单片机(STC89C52)在Ubuntu下的开发
简介 都是8051衍生的8位单片机, STC单片机有89/90/10/11/12/15这几个大系列, 每个系列的特点如下 89系列是传统的8051单片机, 烧录方法有区别, 但是功能上可以和AT89系 ...
- spring boot+sqlite+mybatis实现增删改查例子
主要是更换了下sqlite的数据源而已,其他代码不变. 我都贴一下吧,这个算是比较通用的基础增删改查代码. 1.创建test.db 可以使用Idea自带的Database插件配置,也可以命令行创建,具 ...