zoukankan      html  css  js  c++  java
  • SpringBoot单元测试踩坑

    今天写了一个算法,需要用单元测试来测试其效果。

    后端使用SpringBoot框架

    pom文件导入依赖如下

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
            </dependency>                    

    Test类

    @RunWith(SpringRunner.class)
    @SpringBootTest(classes = MyApplication.class,webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
    public class BPNNTest {
    
        @Autowired
        private TestService service;
    
        @Test
        public void test1() {
            service.estimateTime();
        }
    }

    在测试过程中遇到了几个问题,记录如下

    报错一:

    java.lang.NoClassDefFoundError: org/springframework/core/annotation/MergedAnnotations

    查找资料后发现原因是之前引入的依赖问题,

            <!--原先的依赖-->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-test</artifactId>
                <version>5.2.1.RELEASE</version>
                <scope>compile</scope>
            </dependency>

    解决方案就是将版本降低至5.0.2.RELEASE或者删掉该依赖,仅用spring-boot-starter-test即可。

    报错二:

    Error creating bean with name 'methodValidationPostProcessor'
    ...
    Error resolving JdbcType. Cause: java.lang.IllegalArgumentException: No enum constant org.apache.ibatis.type.JdbcType.DOUBLEE

    该报错尾部提示类型不对,将相应类型改为正确类型即可

    报错三:

    javax.websocket.server.ServerContainer not available

    查找资料后发现SpringBootTest在启动时不会启动服务器,所以websocket会报错,需提供一个测试的web环境

    解决方案就是在@SpringBootTest注解内添加webEnvironment属性

    @SpringBootTest(classes = MyApplication.class,webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
  • 相关阅读:
    406. 根据身高重建队列 vector 自定义排序
    5552. 到家的最少跳跃次数 BFS
    5602. 将 x 减到 0 的最小操作数 双指针
    Hadoop Container is running beyond memory limits code143
    1122. 数组的相对排序 自定义排序
    328. 奇偶链表 链表
    127. 单词接龙 bfs
    5600. 第 K 条最小指令 组合数学
    5548. 最小体力消耗路径 二分
    1024. 视频拼接 dp
  • 原文地址:https://www.cnblogs.com/MrZhaoyx/p/13271828.html
Copyright © 2011-2022 走看看