我正在尝试测试用Spring Boot创建的REST API。以下是该方法的签名:
@RequestMapping(consumes = "multipart/form-data", method = RequestMethod.POST)
public Response<String> upload(@RequestBody CsvUploadModel form) {
以下是模型对象的详细信息:
private char separator;
private char quoteCharacter;
private String metricName;
private String groupName;
private MultipartFile file;
//getters and setters
/**
* Allow file uploads
*
* @return
*/
@Bean
public MultipartConfigElement multipartConfigElement() {
MultiPartConfigFactory factory = new MultiPartConfigFactory();
factory.setMaxFileSize("500MB");
factory.setMaxRequestSize("500MB");
return factory.createMultipartConfig();
}
/**
* Get the multipart resolver
*
* @return
*/
@Bean
public MultipartResolver multipartResolver() {
return new CommonsMultipartResolver();
}
POST /dev/wizard/upload HTTP/1.1
Host: localhost:10022
Cache-Control: no-cache
----WebKitFormBoundaryE19zNvXGzXaLvS5C
Content-Disposition: form-data; name="metricName"
test
----WebKitFormBoundaryE19zNvXGzXaLvS5C
Content-Disposition: form-data; name="separator"
,
----WebKitFormBoundaryE19zNvXGzXaLvS5C
我漏了什么明显的东西吗?
谢谢
@RequestBody CsvUploadModel form
这需要提供HttpMessageConverter
,该HttpMessageConverter
可以读取Multipart/Form-Data
类型的请求负载。不幸的是Spring目前没有提供这样的转换器。有一个FormHttpMessageConverter
,但它只能读取简单的表单数据(Application/x-www-form-urlencoded
)。
为了使方法正常工作,您应该删除@requestbody
注释,并为文件添加一个参数:
upload(CsvUploadModel form, @RequestParameter(required=false) MultipartFile file)
绑定表单数据不需要@requestbody
。然后必须手动设置文件:
form.setFile(file);
也许有一个支持读取multipart/form-data
的第三方转换器。我既不使用也不知道。
我正在尝试根据下面的代码提出帖子请求: 此请求不需要身份验证,也不需要登录和密码。在邮递员那里,我可以成功地提出请求,但当我尝试执行上述代码时,我得到了: 401未经授权 我在邮递员那里模拟了错误,它给了我下面的信息: 当我在Postman中将身份验证方法更改为“No Auth”时,请求运行良好。 我想我必须在代码中设置这个选项“No Auth”,但我不知道如何设置。 我这样做: 但错误仍在继续。
我想测试一个示例Twirp RPC服务。示例服务来自Twirp官方网站。 PROTOBUF定义如下: 服务器实现: 我尝试了这里建议的解决方案,但在ClientConn与HTTPClient中存在一些混淆。到目前为止,我有这个 有没有办法把一个转换成另一个,或者有没有办法测试Twirp RPC?
我有一个应用类 我有控制器课 并且,我想为Application test编写一个测试用例,以确保创建的实例类型为HelloController 但是,我在自动连接 hello控制器变量时遇到错误(找不到 hello 控制器类型的 bean)。根据我的理解,@SpringBootTest应该创建上下文并返回一个实例。我们不需要编写任何上下文 xml 或使用任何注释Config 类来获取实例。缺少了
我有几个繁重的Spring集成测试(是的,这不是最好的方法,我没有时间正确地模拟所有外部dep) 下面是测试的典型注释 由于以下原因,测试会定期失败: 这里有两个问题:1、让测试共存的正确方式是什么?我在surefire插件中设置了forkCount=0。好像有帮助 2.1. 在每次测试期间,我实际上不需要启动所有的
我的一些 .Net Framework 4.5 和 4.6 和 4.7 项目没有被测试资源管理器发现它们的测试,我一直遇到这个反复出现的问题。“测试”日志输出显示: 这就是我所有的信息。 我已经尝试了不同版本的和适配器等的几乎所有组合。只是想不通这个。我已经完成了测试扩展缓存清除。
俩面试官提问 自我介绍 简单介绍一下项目 说说表结构具体怎么优化的 怎么进行模块测试的 谈谈对测试的理解 是否了解一些常用的测试工具和测试框架 这边做自动化测试是python能接受转语音吗 反问 部门做什么的,以及去了负责什么#软件开发2023笔面经#