`
cqh520llr
  • 浏览: 510172 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

springboot测试

 
阅读更多
package com.macro.mall;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.MediaType;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.security.authentication.AnonymousAuthenticationToken;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.context.web.WebAppConfiguration;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;

import java.io.File;
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Collection;

@WebAppConfiguration
//@ActiveProfiles("test")
@RunWith(SpringRunner.class)
@AutoConfigureMockMvc
@SpringBootTest(classes = Application.class)
public class PmsDaoTests {

    @Test
    public void contextLoads() {
    }

    @Autowired
    private WebApplicationContext wac;

    //@Autowired
    private MockMvc mockMvc;

    //@Autowired
    //private SecurityContext context;

    /**
     * 在每次测试执行前构建mvc环境
     */
    @Before
    public void setup() {
        mockMvc = MockMvcBuilders.webAppContextSetup(wac).build();
        Collection objects = new ArrayList<>();
        objects.add(new SimpleGrantedAuthority("Test"));
        SecurityContextHolder.getContext().setAuthentication(new AnonymousAuthenticationToken("user", new AdminUserDetails(new UmsAdmin(), null), objects));
        //context.setAuthentication(new AnonymousAuthenticationToken("user", new Object(), null));
    }

    /**
     * 测试上传文件
     */
    @Test
    public void whenUploadFileSuccess() {
        try {
            File file = new File("C:\\xx真情\\xxx.jpg");
            //文件之外的参数
            String key = "/2019/12/18/" + file.getName();
            String result = mockMvc.perform(
                    MockMvcRequestBuilders
                            .fileUpload("/picture/upload")
                            .file(new MockMultipartFile("file",
                                    "test.txt",
                                    MediaType.MULTIPART_FORM_DATA_VALUE, new FileInputStream(file)))
                            .param("key", key))//参数
                    .andExpect(MockMvcResultMatchers.status().isOk())
                    .andReturn().getResponse().getContentAsString();
            System.out.println(result);
        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}
分享到:
评论

相关推荐

    SpringBoot测试项目

    【SpringBoot测试项目】是一个基于IntelliJ IDEA(IDEA)开发的实例,它整合了Mybatis和MySQL数据库,提供了一个基本的用户登录功能的演示。这个项目旨在帮助开发者了解如何在SpringBoot环境下搭建并运行一个包含...

    24-springboot 测试.rar

    F:\test\java\java_learn\idea_work\redis_learn\springboot-test-redis-master --&gt; Spring boot Test fails saying, Unable to start ServletWebServerApplicationContext due to missing ...

    Springboot测试

    Springboot测试

    基于Springboot测试系统

    基于Springboot测试系统

    springboot测试程序

    SpringBoot测试程序是一个基于SpringBoot框架的应用程序,用于帮助开发者快速构建、测试和部署Java项目。SpringBoot简化了Spring的初始设置和配置,使得开发过程更加高效。在本程序中,我们将探讨SpringBoot的核心...

    springboot的测试,适合小白前期学习springboot

    这个压缩包文件的标题表明其内容是针对初学者的SpringBoot测试教程,旨在帮助新手快速入门。描述中提到,该资源包含了SpringBoot配置方面的内容,这对于理解和实践SpringBoot的应用非常有帮助。 在SpringBoot中,...

    springboot测试项目

    springboot测试项目

    springboot 学习测试项目

    在"springboot 学习测试项目"中,我们可以看到以下几个关键文件: 1. **.classpath**:这是一个 Eclipse 工程的配置文件,用于记录项目中所有类路径的详细信息,包括 JAR 包、源代码目录等。在 SpringBoot 项目中,...

    Springboot测试类没有bean注入问题解析

    主要介绍了Springboot测试类没有bean注入问题解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    springboot helloworld程序(带简单测试用例)

    这个程序旨在展示如何快速地搭建一个基于SpringBoot的应用,并包含简单的测试用例来验证功能。以下将详细讲解SpringBoot的基本概念、HelloWorld程序的构建过程以及测试用例的重要性。 SpringBoot是由Pivotal团队...

    springboot整合 netty做心跳检测

    springboot整合 netty做心跳检测 springboot整合 netty做心跳检测 springboot整合 netty做心跳检测 springboot整合 netty做心跳检测 springboot整合 netty做心跳检测 springboot整合 netty做心跳检测 springboot整合...

    springBoot+mybatis+oracle 测试项目

    此demo为简单测试项目,springBoot+mybatis+oracle,为2.0.4版本,里面直接把自己的url和账户密码替换即可使用,自用无问题

    springboot测试工具

    最适合测试Spring Boot REST API的工具 Wisdom RESTClient https://github.com/Wisdom-Projects/rest-client

    springboot基础demo下载.zip

    springboot入门demo合集,springboot+mybatis+mysql实例,springboot文件上传下载,springboot拦截器等等关于springboot的基础demo都有,同步学习网站:https://www.moyundong.com/java/springboot/1介绍.html

    springBoot

    "springboot-test-master"这个文件名可能是指一个SpringBoot测试项目的主分支。在Git版本控制系统中,"master"通常是默认的主分支,意味着这是项目的主要代码库。"springboot-test"部分则表明这个项目专注于...

    课设 毕设 vue+springboot 前后端分离 网上银行系统 功能详尽界面优美 A+级项目评价 附有详尽功能描述及使用手册

    vue+springboot 前后端分离的网上银行系统,拥有毕设级详细完善的功能实现以及优美和谐的前端页面,能用于数据库课设、web课设甚至毕设等一系列场景。 有vue+springboot的网上银行系统、学生选课系统可供挑选,还有...

    java+springboot体质测试数据分析及可视化设计

    java+springboot体质测试数据分析及可视化设计java+springboot体质测试数据分析及可视化设计java+springboot体质测试数据分析及可视化设计java+springboot体质测试数据分析及可视化设计java+springboot体质测试数据...

    springboot从入门到精通

    五、SpringBoot测试 了解SpringBoot提供的测试工具,如`@SpringBootTest`、`@WebMvcTest`等,编写单元测试和集成测试,确保代码质量。使用Mockito和JUnit进行模拟对象测试。 六、SpringBoot安全 学习Spring ...

    StoreProject:存储SpringBoot测试项目

    StoreProject 商店SpringBoot测试项目

    基于springboot的guacamole客户端示例

    这些测试可能使用了SpringBoot测试框架,模拟了API调用和响应,验证了客户端的功能。 为了扩展这个示例,你可以考虑以下方向: - **身份验证和授权**:增强身份验证机制,例如整合OAuth2或其他身份提供商。 - **多...

Global site tag (gtag.js) - Google Analytics