【发布时间】:2017-10-16 21:33:53
【问题描述】:
假设产品尚不存在,我正在尝试测试更新产品实体的 PUT 请求。因此,我在测试中对以下逻辑进行建模:
- 创建产品。产品有一个列表作为字段,每次创建或更新产品时,该字段的大小都会自动增加。所以我希望大小在创建后立即等于 1。
- 执行 GET 请求以检查大小。断言
assertTrue(response.getBody().getData().size() == 1);按预期返回 true。 - 然后我想模拟一个 PUT 请求并检查更新产品的
size字段是否增加了。 因此,断言将是更新产品的大小字段必须大于其来自先前更新请求的大小。
但我被困在这一点上,需要关于在这种情况下如何处理 PUT 请求的建议。
@RequestMapping(method = RequestMethod.PUT)
@ResponseStatus(HttpStatus.OK)
void updateProduct(@PathVariable("name") String productName);
@Test
public void checkUpdated() {
Product newProduct = createProduct(SIMPLE_PRODUCT);
ResponseEntity<SimpleProduct> response = restTemplate.getForEntity("/products/{name}/?fields={fields}",
SimpleProduct.class, SIMPLE_PRODUCT);
assertThat(response.getStatusCode()).isEqualTo(HttpStatus.OK);
assertTrue(response.getBody().getData().size() == 1);
}
【问题讨论】:
标签: java rest unit-testing testng