Cypress - 从 json 响应正文获取值

2024-01-03

我正在使用 Cypress 进行一些 API 测试,但我很难访问 JSON 响应正文中的值;但是我可以对身体进行断言,表明它正确接收了它。

下面我尝试分配 JSON 主体 (response.body),然后从中获取“id”的值:

describe('Creating a board', () => {    
it('should create a board', () => {
    cy.request({
    method : 'POST',
    url:`${requestUrl}/boards/`, 
    qs: {
      name : "test-board",
      token : token,
      key : key
    }
    }).then((response) => {
      expect(response).property('status').to.equal(200)
      expect(response.body).property('id').to.not.be.oneOf([null, ""])
      const body = (response.body)
      boardId = body['id']
    })
})

我进行了大量搜索,但找不到具体的方法。任何帮助,将不胜感激...


我设法通过使用 Promise 解决了这个问题;

进一步阅读后,我发现then我正在执行的函数是同步的(我是 JS 新手,请不要伤害我)。

我重构了then函数如下:

.then((response) => {
        return new Promise(resolve => {        
            expect(response).property('status').to.equal(200)
            expect(response.body).property('id').to.not.be.oneOf([null, ""])
            const respBody = response.body;
            boardId = respBody['id']
            resolve(boardId)
        })

这可能不完全正确或不是最佳实践,但它适用于我的演示

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cypress - 从 json 响应正文获取值 的相关文章

  • 如何将udp发送到udp node.js服务器?

    我对此很陌生 所以我真的不知道我在做什么 但我已经设置了一个 node js udp 服务器 我想从客户端 来自网站 向它发送一个数据包 但我不知道如何在 javascript 中做到这一点 或者是否可能 我不是在研究如何从 Node js
  • 取消html5浏览器中的单图请求

    我正在动态加载 大 图像以绘制到 html5 画布中 如下所示 var t new Image t onload t src http myurl 但每隔一段时间就会想取消图片请求完全地 我想出的唯一方法是设置src to i e t sr
  • VBA / HTML / jQuery 选择自动完成 - 在列表中选择

    我正在尝试使用 Excel 中的 VBA 在网站的列表中选择一个值 这不是一个 正常列表 该网站使用 jQuery 选择自动完成 如下所示 example http davidwalsh name demo jquery chosen ph
  • 如何仅在 NextJS 站点构建期间使用 getInitialProps?

    当使用 NextJS 构建静态站点时 我想要getInitialProps方法仅在构建步骤期间触发 而不是在客户端上触发 在构建步骤中 NextJS 运行getInitialProps 方法 https nextjs org docs fe
  • 动画进度元素值

    我有一个progress元素 该元素如下所示 div class container div div div
  • Ember.js 处理 View 事件后转换到路由

    Setup 我有一个 Ember 应用程序 支持使用 Imgur API 上传图像 我已经有一个工作路线和模板来处理任何 Imgur ID 但我想在上传新图像后转换到此路线 使用返回的 Imgur ID 这是该应用程序的相关部分 http
  • 使用 CryptoJS 更改密钥 [重复]

    这个问题在这里已经有答案了 我正在使用 CryptoJS 来加密和解密文本 在这里 我只是获取消息并显示加密和解密消息 我使用DES算法进行加密和解密 这是我的 HTML 文件
  • 即使我可以监视其他方法,也无法监视事件处理程序

    我想使用 Jest Jasmine Enzyme 测试 React 中的事件处理程序 MyComponent js import React from react class MyComponent extends React Compon
  • jquery window.open 在 ajax 成功中被阻止

    尝试在我的 ajax 成功调用中打开一个新的浏览器窗口 但是 它被阻止为弹出窗口 我做了一些搜索 发现用户事件需要绑定到 window open 才能避免这种情况发生 我还找到了这个解决方案 您可以在 ajax 之前打开一个空白窗口 然后在
  • 如何使用 JavaScript 获取没有 HTML 元素的纯文本?

    我的 HTML 中有 1 按钮和一些文本 如下所示 function get content I don t know how to do in here
  • Javascript - 将值从下拉框传递到 Google Maps API

    我正在使用 Google 地图 API 为一家出租车公司创建报价表 目前 用户在 2 个文本框中输入出发点和接载点 API 会计算两点之间的距离以及行程费用 我正在尝试添加两个具有设定位置的下拉框 以便用户可以选择这些位置之一或使用文本框输
  • 未捕获的错误:找不到模块“jquery”

    我在用Electron https github com atom electron制作桌面应用程序 在我的应用程序中 我正在加载一个外部站点 Atom 应用程序之外 可以说http mydummysite index html http
  • 是否有任何非轮询方式来检测 DOM 元素的大小或位置何时发生变化?

    很长一段时间以来 我一直在寻找一种方法来检测 DOM 元素的大小或位置何时发生变化 这可能是因为窗口调整了大小 或者因为向该元素添加了新的子元素 或者因为在该元素周围添加了新元素 或者因为 CSS 规则已更改 或者因为用户更改了浏览器的字体
  • Typeahead.js substringMatcher 函数说明

    我只是在做一些研究Typeahead js这是一个非常酷的图书馆 感谢文档 我已经成功地获得了一个基本的示例 该文档也非常好 但是我试图弄清楚以下代码块实际上在做什么 var substringMatcher function strs r
  • 如何使JavaScript函数在Eclipse“大纲视图”中可见?

    我有这样的代码 但如果它在匿名函数中定义 则无法打开函数大纲 类没有问题 我该如何概述something2 请分享一些提示 我可以将所有函数标记为构造函数 但这是无效的方法 start of track event required deb
  • Twitter 嵌入时间轴小部件

    我继续下载http platform twitter com widgets js http platform twitter com widgets js And the http platform twitter com embed t
  • Chartjs刻度标签位置

    尝试让 Y 轴刻度标签看起来像image https i stack imgur com XgoxX png 位于秤顶部且不旋转 缩放选项当前如下所示 scales yAxes id temp scaleLabel display true
  • Select2 下拉列表动态添加、删除和刷新项目

    这让我发疯 为什么 Select2 不能在其页面上实现清晰的方法或示例如何在 Select2 上进行简单的 CRUD 操作 我有一个 select2 从 ajax 调用获取数据
  • 需要有关 React Js 的帮助

    我是 React Js 新手 我的代码无法正常工作 请看下面 这是我的脚本文件Main jsx 该文件由 React 编译 输出放置在 dist 文件夹下的 main js 文件中 var react require react react
  • 用于 C# XNA 的 Javascript(或类似)游戏脚本

    最近我准备用 XNA C 开发另一个游戏 上次我在 XNA C 中开发游戏时 遇到了必须向游戏中添加地图和可自定义数据的问题 每次我想添加新内容或更改游戏角色的某些值或其他内容时 我都必须重建整个游戏或其他内容 这可能需要相当长的时间 有没

随机推荐

  • Windows中的JRE安装目录[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 有没有命令可以检查Windows下活动的 因为机器可以安装1个以上的JRE JRE安装目录 对于linux来说 对应的命令是 which java W
  • Firebase idToken 过期后我该怎么办

    我在用着onAuthStateChanged this unregisterAuthObserver firebase auth onAuthStateChanged user gt if user user getIdToken true
  • grep 在目录中查找包含字符串的文件

    我正在尝试熟悉终端的基础知识 我想在我的 CMS 网站中找到包含我的 Google Analytics 跟踪代码 gaq 作为搜索字符串的文件应该可以解决问题 我的桌面上有一个文件夹 其中包含所有站点文件 用户 我的名字 桌面 网站 我打开
  • Android:如何查找设备的帧速率?

    帧速率 我指的是显示变化的速率 即调用 Ondraw 并重新绘制画布 所有 Android 设备都有默认费率吗 由于该速率取决于设备的处理能力 因此在开始为该移动设备编程之前如何找出该设备的帧速率 这可能是后续这个问题 https stac
  • CSS如何在伪元素内垂直对齐文本

    我创建了一个伪元素来放置无序列表 CSS如下 ul pricing column width 200px height 400px background red position relative margin 50px pricing c
  • dataTables .row( ) 不是服务器端处理行详细信息的函数

    function format d return Full name br Salary br The child row can contain any data you wish including links images inner
  • Android 中使用 iText 生成的 PDF 中不显示西里尔字母

    我正在尝试在我的 Android 应用程序中生成 PDF 我使用 iText 它生成 PDF 但只显示英文字母 我找到了使用 unicode 的 iText 示例代码 我在一个简单的 comsole java 应用程序中尝试了这个示例代码
  • 8086边画边听键盘

    我熟悉等待键盘输入的 INT 16h 但我正在开发一个游戏 我希望有一个游戏循环 它可以在屏幕上显示动画 并且只要有键盘敲击 8086 就应该运行到我的中断处理程序并告诉我按下了哪个键来相应地更新我的数据 我怎么能这样做呢 当调用 INT
  • 使用 OpenCV 删除孤立像素

    我正在寻找一种使用 OpenCV 从二进制图像中删除孤立的白色像素的方法 类似的问题 OpenCV 摆脱孤立像素 https stackoverflow com questions 13755840 opencv get rid of is
  • 参数化数组#uniq(即uniq_by)[重复]

    这个问题在这里已经有答案了 如果我不想从数组中删除重复元素 而是想删除具有特定共同属性的元素 该怎么办 具体来说 我想从数组中删除具有重复 essences 的所有字符串 其中essence 的定义如下 class String def e
  • StreamBuilder Firestore 分页

    我是 flutter 的新手 当滚动到达顶部时 我正在尝试使用 Streambuilder 对聊天进行分页 问题是 当我在滚动监听器流构建器中进行查询时 将其查询优先于滚动监听器并返回旧响应 有什么办法可以做到这一点吗 我在这里有什么选择
  • 从 C# Web 浏览器控件调用控件上的 Javascript 事件

    I am working on a web scraper in C where I have a web browser control that loads a web page I then collect data and depe
  • 使用 python panda 按月、年计算出现频率

    假设我有以下数据系列 Date Category 2014 8 Facebook 2014 8 Vimeo 2014 8 Facebook 2014 8 Facebook 2014 9 Facebook 2014 9 Orkut 2014
  • 在 PyQt5 中,我们如何获取焦点小部件的名称/对象名称?

    在我们的 PyQt5 程序中 我们多次使用 Qline Edits QcheckBox QListwidget 如何知道 我们的程序中使用的小部件有哪些小部件名称 如何获取 返回当前具有焦点的小部件的名称 用户指定的名称 正如 Heike所
  • 在 C++ 中将函数模板作为参数传递

    例如 我想从两个序列中获取最大值列表 left and right 并将结果保存在max seq 它们都是先前定义和分配的 std transform left begin left end right begin max seq begi
  • “py.test”与“pytest”命令

    The py test在我的例子中 命令失败了 而pytest运行完全正常 我使用 pytest flask 插件 platform linux Python 3 5 2 pytest 3 0 2 py 1 4 31 pluggy 0 3
  • JavaFX TableView 通过单击和自动插入行进行编辑?

    我在程序中使用了 tableview 来显示几行 这很好 我的程序用于会计 正如你所知 其中插入了大量数据 我使用了表视图 但我遇到了很多问题 问题 1 当用户想要修改值时 他将双击以编辑单元格 我希望我的用户选择任何行并开始输入 问题2
  • 如何检查MySQL中是否存在某行? (即检查 MySQL 中是否存在用户名或电子邮件)

    我需要帮助检查数据库中是否存在行 就我而言 该行包含一个电子邮件地址 我得到结果 email no longer exists email protected cdn cgi l email protection 这是我当前使用的代码 if
  • 如何在 iPhone 的 Objective-C 中本地播放视频?

    我想通过将视频存储在应用程序中来在 iPhone 上本地播放视频 我能怎么做 NSString path NSBundle mainBundle pathForResource myVideo ofType mp4 MPMoviePlaye
  • Cypress - 从 json 响应正文获取值

    我正在使用 Cypress 进行一些 API 测试 但我很难访问 JSON 响应正文中的值 但是我可以对身体进行断言 表明它正确接收了它 下面我尝试分配 JSON 主体 response body 然后从中获取 id 的值 describe