问题标签 [rest-assured]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cxf - 带有 CXF 的 JAX-RS / 放心:处理多参数文件上传
我想上传一个 JPG 文件和一个 JSON 序列化的 Java 对象。在我使用 Apache CXF 的服务器上,在客户端上我正在使用rest-assured进行集成测试。
我的服务器代码如下所示:
我的客户端代码如下所示:
当我从文件中读取 json 部分时,一切正常,就像在第一个 multiPart 行中一样。但是,当我想序列化 json 实例时,我遇到了问题。我尝试了许多变体,但没有一个有效。
我认为这个变体应该可以工作:在客户端
并在服务器上
但不是。谁能告诉我应该怎么做?
java - 放心的请求不起作用
我正在使用 Rest-Assured 来测试我的 Rest API。网络服务似乎运行正常,因为正在运行
我将我的用户作为 json。
然后,当尝试使用 Rest-Assured 进行简单请求时
给我输出
这会是什么?
java - 在放心的请求正文中将对象序列化为 json
我正在使用resteasy制作一个 rest api ,并用rest-assured对其进行测试。
假设我有一个类 ,message
有一个属性text
。
以下测试将尝试将此对象发布到给定的 url:
msg 对象被序列化为 json 并发布,但不是以我想要的方式 - 不是以 resteasy 需要的方式,也就是说。
发布的内容:
什么工作:
有没有人知道我如何才能按预期进行这项工作?
java - 接受一个列表作为 Jersey 网络服务的参数,该服务使用多部分的内容类型
我有一个现有的 Jersey webservice 方法,它通过 Http POST 方法接受许多参数,该方法旨在处理标准表单数据,内容类型为 application/x-www-form-urlencoded;这些参数之一是字符串列表。下面是我拥有的方法签名的示例。
这工作正常,当多个 p3 参数在 List 中传递时,Jersey 会正确生成并传递到方法中。
我现在需要制作此方法的替代版本,该版本将接受多部分请求,以便文件也可以与现有参数一起上传。所以我创建了一个非常相似的方法签名来使用多部分请求,示例如下所示。
我将 FormParam 注释更改为 FormDataParam,因为我相信在使用多部分数据时需要这样做。我一直在尝试使用 RESTAssured 从 JUnit 测试中调用此方法来进行调用(与对原始方法所做的相同),但出现以下错误。
在 Jersey 代码中放置了一些断点,在堆栈跟踪中标识的一些点上,它似乎已经确定了要调用的正确方法,但是在它试图传递给它的参数列表中,省略了 p3 .
在处理多部分数据时,为了支持接受 List 作为输入,是否需要做一些不同的事情?鉴于这是一个可选参数,我希望无论如何都应该可以省略它,原始方法就是这种情况。
测试中用于调用该方法的 RESTAssured 代码如下。
在 RESTAssured 测试代码中使用 formParam 代替 param 时,我也尝试过,但得到相同的结果。
在此先感谢,任何帮助将不胜感激。
java - HTTPClient 在完成之前切断响应
我正在使用 Apache HTTPClient为 RESTful API 编写测试,当我执行大型请求(返回超过 80,000 个字符)时,响应被切断。截止点通常在 85,275 左右。我可以在 curl 中从命令行运行完全相同的请求,然后取回整个语句。
我正在运行的系统正在运行 Tomcat,服务器日志表明正在返回整个响应,所以在我看来,问题在于 HTTPClient 带回数据的方式。
我已经直接使用Rest Assured(使用 HTTPClient)和 HTTPClient 来确保问题不在于 Rest Assured。我更改了几个参数,包括 CoreConnectionPNames 参数 CONNECTION_TIMEOUT、MAX_LINE_LENGTH、SO_TIMEOUT 和 SOCKET_BUFFER_SIZE。
例如,在放心
或在 HTTPClient
rest - 如何在不修改数据库状态的情况下在我的 WS 上使用放心进行集成测试?
我目前正在使用 Spring MVC 开发 REST Web 服务。
我正在努力寻找在我的 WS 上进行集成测试的最佳方法。
第一种解决方案:使用放心
- 优点:流利的api,非常容易使用它的酷DSL
- 缺点:当我在我的 WS 上执行 POST 或 PUT 请求时,我的数据库状态被修改,并且下一个测试被破坏。
第二种解决方案:对控制器进行单元测试并在服务级别单独执行集成测试
- 优点:我可以控制我的数据库的状态,使用 Spring Test Framework 并在每次测试后执行回滚
- 缺点:我不再执行端到端集成测试。
问题:如何在不修改数据库状态的情况下使用 rest-assured 进行集成测试?
非常感谢。
java - 放心 - 不能 POST 带有参数和正文
我正在使用 Rest Assured 测试 REST api。尝试使用 url 和正文内容中的参数进行 POST 时遇到错误。这在手动测试时可以正常工作。从 url 中删除参数不是一个选项
测试代码:
运行时会引发以下错误
为什么 Rest Assured 不允许在 POST 中同时使用参数和正文内容?
java - 如何获取列表来自放心的 JsonPath
我正在使用放心的框架,在其中,它有 JsonPath 类。JsonPath 的方法签名为 getList(String path, Class T);
我试图做这样的事情:
我得到一个运行时强制转换异常。那么调用这个的正确格式是什么。我也尝试过:
这也失败了。实际上编译失败。
java - NullPointerException - 在放心运行非常简单的测试时
尝试运行此代码时出现以下错误:
我用的是放心1.7,groovy 1.8.8,所有的放心依赖都加载在我的系统库路径中。我也在使用 jdk 1.7。这是某种环境问题,作为同事,使用相同的 .jar 文件运行相同的代码没有问题......
java - i/o 问题没有为类 org.json.JSONObject 找到序列化程序,也没有发现用于创建 BeanSerializer 的属性
不知道发生了什么,完整的错误是:
我正在尝试向 RESTful 服务发送 PUT 请求。我正在解析 POST 并为 PUT 的“ID”和“启用”发送修改后的键/值对。
createUserID 是一个全局变量,它是从 POST 解析的 ID。
正在解析的 JSON 文件如下所示:
在之前的测试方法中,我正在使用所有适当的 url 端点设置再保证...
此外,PUT 也失败,出现 NULLPointerException 错误。这可能是未来的另一篇文章!