首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cucumber-jvm的失败规则

cucumber-jvm的失败规则
EN

Stack Overflow用户
提问于 2017-04-29 18:21:09
回答 1查看 277关注 0票数 1

我正在使用cucumber-java为Rest API编写测试套件。我尝试使用@Rule,但是我发现cucumber-jvm不支持它。是否有针对步骤失败编写规则的选项?

我需要在断言失败时打印请求-响应(我在http响应状态上断言),这样我就可以了解哪里出了问题?

在这方面的任何帮助都非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2017-06-23 01:23:49

Cucumber-jvm有@After注释,您可以在其中添加一些内容,但是为什么不简单地在断言语句失败文本中包含响应呢?

我使用rest-assured来管理我的HTTP请求-响应。我的响应在类Response的对象中结束。要获得完整的响应,我可能会这样编码:

代码语言:javascript
复制
response.getBody().prettyPrint()

编辑

您还指定了请求。假设requestSpec是我们用请求值初始化的类RequestSpecification的实例,我使用

代码语言:javascript
复制
requestSpec.given().log().all()

将请求转换为字符串形式。

所以使用JUnit assertTrue

代码语言:javascript
复制
assertTrue("REST service x Status Code =" + response.getStatusCode() + 
  ", for request = " + requestSpec.given().log().all() + ",\n response = " +
  response.getBody().prettyPrint(), response.getStatusCode() == 200);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43694450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档