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

正在测试Spring Boot rest控制器,无法找到is()的包

戚宏浚
2023-03-14

我正在为Spring Boot中的REST控制器编写一个测试。Is使用Is(),但我的IDE没有建议它在哪个包中,所以我找不到它。

这是我的测试方法;

@Test
    public void printerIsReady() throws Exception {
        /* Set the contents of status.txt to anything other than 3 */
        String statusFilePath = printerPath + "/status.txt";
        PrinterFileHelper.writeToFile("5", statusFilePath);

        this.mockMvc.perform(get("/printer"))
                .andExpect(status().isOk())
                .andExpect(jsonPath("$.status", is("READY")));

    }

我在网上找到了很多使用is()方法的例子,但根本不清楚需要添加什么包才能访问它。

共有1个答案

隆选
2023-03-14

我在这里找到了如何用mockMvc检查响应体中的字符串的答案

您需要导入的包是;

import static org.hamcrest.Matchers.*;

我需要将这个包添加到我的pom中。xml文件

<dependency>
    <groupId>org.testinfected.hamcrest-matchers</groupId>
    <artifactId>core-matchers</artifactId>
    <version>1.5</version>
</dependency>
 类似资料:
  • 我有一个rest控制器,它有简单的CRUD操作。我正在尝试编写集成测试。 下面是我的RestController: 我已经为RestController中的所有endpoint编写了集成测试 集成测试类:- 我的问题: 1.)当我把断点放在Rest控制器中时,它并没有停在那里,实际上它没有被调用。 2.)当我运行GET测试时,它会从响应返回登录html页面。getBody() 3.)当我运行POS

  • 英文原文:http://emberjs.com/guides/testing/testing-controllers/ 单元测试方案和计算属性与之前单元测试基础中说明的相同,因为Ember.Controller集成自Ember.Object。 针对控制器的单元测试使用ember-qunit框架的moduleFor来做使这一切变得非常简单。 测试控制器操作 下面给出一个PostsController

  • 问题内容: 我正在使用simple_form gem并生成表单,我正在指定remote:true选项,如下所示: 因此,表单的输出html是以下片段: 正如我检查的那样,当使用 remote:true 选项时,使用标准的form_for帮助器将 data-remote =’true’添加 到表单中。从生成的html中可以看到,当我使用simple_form gem时,也有这样的属性。 __ 因此,

  • 我有一个工作控制器,用于在发布请求中上传csv。邮递员状态200,测试时状态400。我正在努力看看问题是什么。 控制器: CsvHelper Util: 测试: 当测试失败时,我可以看到这个已解决的异常:类型=org.springframework.web.multipart.support.MissingServletRequest estPartException

  • 我在Ant构建脚本中使用JUnit5控制台。但是,它在我的项目中找不到任何测试。 我在终端中使用了以下命令: 其返回: 我得到了与Ant脚本相同的输出:

  • spring-test模块对测试控制器@Controller提供了最原生的支持。详见14.6 "Spring MVC测试框架"一节。