You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cypress中JSON响应断言TotalCoreUI失败,求排查解决

断言JSON响应字段的问题解决
  • 错误原因:你的断言预期结构和实际response.body的结构不匹配。从报错信息能看出,实际响应体是数组包裹的对象,结构为[ { payload: { data: ... } } ],但你直接用{ data: ... }做深相等对比,自然会触发报错。

  • 修正方案:

    1. 精准定位目标字段断言(推荐,测试更健壮):
      expect(response.status).to.eq(200);
      // 逐层定位到TotalCoreUI字段
      const totalCoreUIValue = response.body[0].payload.data.actor.account.nrql.results[0].TotalCoreUI;
      expect(totalCoreUIValue, 'TotalCoreUI的值').to.eq(0);
      
    2. 修正深相等的预期结构(匹配实际响应层级):
      expect(response.status).to.eq(200);
      expect(response.body, 'response body').to.deep.equal([
        {
          payload: {
            data: {
              actor: {
                account: {
                  nrql: {
                    results: [{ TotalCoreUI: 0 }]
                  }
                }
              }
            }
          }
        }
      ]);
      
  • 额外提示:如果只需要验证TotalCoreUI的数值,优先用第一种方案,无需对比整个响应体,避免因其他无关字段变化导致测试失效。

内容的提问来源于stack exchange,提问作者Jesús Eduardo Mora Pérez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 13:57:07