【问题标题】:rest assured test failing intermittently due to data missing in the response由于响应中缺少数据,请放心测试间歇性失败
【发布时间】:2015-10-07 13:32:55
【问题描述】:

我有一个放心的测试,我将 json 转换为 java 对象并在 java 对象上断言。在响应对象中,我在测试中断言了一个特定的值。当我使用 POSTMAN 手动运行服务时,我总是在响应中看到参数值,但是当我的自动化测试执行时,响应对象中并不总是存在该值。

我怀疑可能是服务端的问题没有发送一致的响应,但是当手动点击时,该值始终存在。

测试代码:

    @Test
    public void validateResponse() {

        RequestObject.name= "Hello";
        RequestObject.age="20";          

        ResponseObject responseObject= given()
                .contentType(TestData.CONTENT_TYPE_FOR_TEST)
                .body(RequestObject)
                .then()
                .log()
                .everything()
                .when()
                .post(uri)
                .as(ResponseObject.class);    
        assertNotNull(responseObject.name);
        assertNotNull(responseObject.year.age);

我认为我的测试简单不复杂,但断言间歇性失败。

关于如何在这方面进行更多调试有什么见解吗?

【问题讨论】:

    标签: java postman rest-assured


    【解决方案1】:

    RequestObject 中的字段看起来是静态的,我认为 JSON 对象映射器很可能不会将结果绑定到静态字段。尝试使它们成为非静态的。

    【讨论】:

      猜你喜欢
      • 2011-12-29
      • 2020-10-03
      • 1970-01-01
      • 2015-11-06
      • 2019-04-24
      • 2016-04-11
      • 1970-01-01
      • 2015-01-04
      • 1970-01-01
      相关资源
      最近更新 更多