使用 java/scala/groovy 进行 REST API 集成测试



我们有用Java构建的Json REST API(spring,gradle)。

我们想对我们的 REST API 进行集成测试。

我们希望在构造测试时重用通过 REST API 公开的 Java Dto 对象 - 这意味着我们必须用 java/scala/groovy/等编写测试。

对易于使用且使用尽可能少样板代码的框架/测试工具有什么建议吗?

我强烈推荐休息驱动程序:

https://github.com/rest-driver/rest-driver

具体来说,您需要使用服务器驱动程序部分:

https://github.com/rest-driver/rest-driver/wiki/Server-Driver

该项目的github上有很多文档,但这里有一个REST API测试的例子:

@Test
public void getJsonResponse() {
    Response response = get(BASE_URL + "/things/5", header("Accept", "application/json"));
    assertThat(response, hasStatusCode(200));
}

要重用您的 DTO,您可以调用response.asJSON()然后通过您正在使用的任何 JSON 库(杰克逊、GSON 等)转换为您的 DTO。

下面是使用它的完整示例:

https://github.com/scobal/seyren/blob/master/seyren-acceptance-tests/src/test/java/com/seyren/acceptancetests/AlertsAT.java

最新更新