提问者:小点点

Serenity-BDD剧本REST与请求规范的交互


我想在我的测试中使用以下格式发送帖子请求:

RequestSpecification requestSpecification = RestAssured.given()
                                                            .contentType(ContentType.JSON)
                                                            .body(taskDetailsFormSubmission);

actor.attemptsTo(
    Post.to(path).with(requestSpecification)
);

我正在创建一个请求规范,并在我的一个目录中解析一个JSON文件。

然而问题是with()只接受类型RestQueryFunction。查看界面:

public interface RestQueryFunction extends Function<RequestSpecification,RequestSpecification> {}

我只是不太确定如何将Request estSpecation应用于POST请求。


共1个答案

匿名用户

函数

带有()的方法需要RestQueryFunction意味着您必须提供RestQueryFunction的实现,它可能是一个类、匿名类或lambda表达式。它遵循规则:

  • 参数是请求规范。
  • 返回类型为请求规范。

你可以试试

actor.attemptsTo(
    Post.to(path).with(r -> r.contentType(ContentType.JSON) 
                           .body(taskDetailsFormSubmission);
    )
);