当前位置: 首页 > 知识库问答 >
问题:

用正则表达式断言重新设置的响应体

楚知
2023-03-14

我试图在json响应体中使用RestAssured作为集成测试的一部分来断言时间戳字段。我不确定哪种方法是执行正则表达式匹配的正确方法

以下是json响应:

{
"timestamp": "2018-06-05T23:56:09.653+0000",
"status": 200,
"error": "None",
"message": "None"
}

这是我的重新保证响应断言的代码

String pattern = "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}(\\+|\\-)\\d{4}$";
Pattern r = Pattern.compile(pattern);
response.then().assertThat()
    .body("timestamp", matchesPattern(pattern)) //<= ERROR HERE
    .body("status", equalTo(999))
    .body("error", containsString("None"))
    .body("message", containsString("None"));

当我编译上面的代码时,我在验证时间戳模式时遇到了错误

  required: java.lang.String,java.lang.CharSequence
  found: java.lang.String
  reason: actual and formal argument lists differ in length

我不确定哪种方法将在hamcrest支持正则表达式模式检查。

共有1个答案

居京
2023-03-14

这里的问题是我的项目中没有正确的依赖项<代码>组织。汉克雷斯特。core没有匹配模式的方法。添加以下依赖项后,以下导入工作正常

<!-- https://mvnrepository.com/artifact/org.hamcrest/java-hamcrest -->
<dependency>
  <groupId>org.hamcrest</groupId>
  <artifactId>java-hamcrest</artifactId>
  <version>2.0.0.0</version>
  <scope>test</scope>
</dependency>

您需要导入以下代码

导入静态组织。汉克雷斯特。文本匹配模式。匹配模式

 类似资料:
  • 问题内容: 在Python / PHP / JavaScript中是否存在支持可变长度lookbehind-assertion的正则表达式实现? 如何编写具有相同含义但不使用lookbehind-assertion的正则表达式? 是否有可能在一天之内实现这种断言? 我认为情况要好得多。 更新: (1)已经有一些正则表达式实现支持变长后向断言。 Python模块正则表达式(不是standard,而是

  • 本文向大家介绍正则表达式零宽断言详解,包括了正则表达式零宽断言详解的使用技巧和注意事项,需要的朋友参考一下 正则表达式零宽断言: 零宽断言是正则表达式中的难点,所以本章节重点从匹配原理方面进行一下分析。零宽断言还有其他的名称,例如"环视"或者"预搜索"等等,不过这些都不是我们关注的重点。 一.基本概念: 零宽断言正如它的名字一样,是一种零宽度的匹配,它匹配到的内容不会保存到匹配结果中去,最终匹配结

  • 本文向大家介绍javascript 正则表达式分组、断言详解,包括了javascript 正则表达式分组、断言详解的使用技巧和注意事项,需要的朋友参考一下  javascript 正则表达式分组、断言详解   提示:阅读本文需要有一定的正则表达式基础。        正则表达式中的断言,作为高级应用出现,倒不是因为它有多难,而是概念比较抽象,不容易理解而已,今天就让小菜通俗的讲解一下。      

  • 昨天,我需要向正则表达式添加一个文件路径,创建一个如下所示的模式: 一开始正则表达式不匹配,因为包含几个正则表达式特定的符号,如 或 。作为快速修复,我将它们替换为 和 . 与 . 然而,我问自己,是否没有一种更可靠或更好的方法来清除正则表达式特定符号中的字符串。 Python 标准库中是否支持此类功能? 如果没有,您是否知道一个正则表达式来识别所有正则表达式并通过替代品清理它们?

  • (?:x) (x) 这两个好像可以平价替换的吧。有什么特殊应用吗?

  • 我在我的程序中添加了一个记录器,在网上冲浪我在代码中添加了一个非常简单的记录器,具有基本的两行定义: 经过几个小时的开发,我想知道如何格式化记录文本的样式,于是我来到了这门课: 阅读Javadoc我可以找到: 可以通过在java中指定格式字符串来定制格式。util。登录中。简单格式化程序。格式属性。 还有几个例子: 我试了每一个,但“格式”字段是“不可见”(我想是私有的),所以我不能直接编辑它。没