java 已放心:找不到equalTo方法

ygya80vv  于 2023-06-20  发布在  Java
关注(0)|答案(4)|浏览(164)

我正在使用以下代码使用Rest Assured库进行服务调用,您能帮助我解决构建问题吗?在查找函数"equalTo"以验证响应数据时存在问题。

参见下面的错误:

这是我的代码:

@Test
public void testFileUpload() {
    final File file = new File(getClass().getClassLoader()
        .getResource("test.txt").getFile());

    assertNotNull(file);
    assertTrue(file.canRead());

    given()
        .multiPart(file)
        .expect()
        // problem here
        .body(equalsTo("This is an uploaded test file."))
      .when()
        .post("/service/file/upload");
}

@Test
public void testGetSingleUser() {
    given()
        .expect()
        .statusCode(200)
        .body(
             "email", equalTo("test@hascode.com"),
             "firstName", equalTo("Tim"),
             "lastName", equalTo("Testerman"),
             "id", equalTo("1"))
        .when()
        .`enter code here`
        .get("/service/single-user");
}
5lhxktic

5lhxktic1#

我假设它是来自hamcrest库的equalTo。你能添加这个导入,看看是否有效吗

import static org.hamcrest.Matchers.equalTo;
g6ll5ycj

g6ll5ycj2#

import static org.hamcrest.Matchers.equalTo;
通过添加上述hamcrest库,错误将得到解决。我试过了,它起作用了。

jgzswidk

jgzswidk3#

equalTo包含在hamcrest.Matchers.中Hamcrest是一个用于编写匹配器对象的框架,允许“匹配”规则被声明性地定义。
import static org.hamcrest.Matchers.*;此导入将解决错误。不仅equalTo,甚至像hasItems这样的函数也可以在导入import static org.hamcrest.Matchers.*;后使用
例如:

`import org.testng.annotations.Test;
 import static io.restassured.RestAssured.*;
 import static org.hamcrest.Matchers.*;`

`public void testGet() {
    baseURI="https://reqres.in/api";
    given().get("/users? 
    page=2").then().statusCode(200).
    body("data[0].first_name",equalTo("Michael")).
    body("data.first_name",hasItems("Michael","Lindsay"));
    
}`
v64noz0r

v64noz0r4#

导入这一行你会得到equalTo()import static org.hamcrest.Matchers. *;

相关问题