随机失败的测试笑话和超级测试 Node.js

2023-11-26

长话短说,我正在开发 RESTapi,它在 /movies 路由的 POST 请求上获取电影标题,从外部 api 获取有关该电影的信息并将该对象保存到数据库中。在 POST /comments 上,您将评论添加到不同的集合中,但每个评论都有一个具有关联电影的“movie_id”属性。

这是我的第一个更大的项目,所以我正在尝试编写集成测试。 一切都很棒,至少在我看来,除了 3 个奇怪的测试用例突然失败。测试可能连续通过 10 次,然后突然出现奇怪的“玩笑”计时器,并且有 3 个案例失败。

我使用原生 mongodb 驱动程序、express 和 jest 以及 supertest 进行测试,删除测试数据库 BeforeAll 和 AfterEach,我不知道这是什么原因。

Timer thingy: enter image description here

And after timer this shows up, failed tests: enter image description here

完整的源代码在这里GITHUB

Other failed cases: enter image description here enter image description here

有什么想法、技巧吗?


我遇到了同样的“开玩笑并行测试”问题,我找到了一个解决方案,也许不是最好的,但现在开玩笑在“队列模式”下运行测试,所以当我删除数据时beforeAll我的下一组测试已准备好使用“新鲜”的新插入数据。

--带内运行 别名:-i.在当前进程中串行运行所有测试,而不是创建运行测试的子进程的工作池。这对于调试很有用。

笑话来源

所以在我的 config.json 中我有:

    "scripts": {
        "test": "set NODE_ENV=test&& jest ./tests --runInBand --detectOpenHandles --forceExit",
        "server": "set NODE_ENV=development&& nodemon app.js"
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

随机失败的测试笑话和超级测试 Node.js 的相关文章

  • Scalatest PlusPlay Selenium 无法调整窗口大小

    对此已经研究了一段时间 我似乎找不到使用 scalatest plus 调整窗口大小的方法 我发现在线搜索或文档的唯一方法http doc scalatest org 2 1 5 index html org scalatest selen
  • 数字和数字对象有什么区别?

    存储在普通变量中的数字有什么区别 var foo 5 和一个数字对象 var bar new Number 5 数字对象可以用来做什么 A Number对象包含一些有用的方法和属性 例如 数字对象方法 Method Description
  • JavaScript 计算从今天到 7 天前的日期

    我正在计算从今天开始的日期前 12 天 但它不会返回正确的日期 例如 对于今天的日期 11 11 2013 mm dd yyyy 它返回 10 30 2013 而它应该返回 10 31 2013 这是代码 var d new Date d
  • jQuery的$如何既是函数又是对象?

    我的意思是对象 object Object 它是怎么做的 selector and fn init同时 你能给我一个简单的例子吗 这并不是 jQuery 独有的 而是 javascript 的一个方面 所有函数都是对象 例如 var f f
  • 在 TypeScript 中迭代对象的键和值

    在纯 JavaScript 中 我们可以迭代对象属性和值 如下所示 const values Object keys obj map key gt obj key 在 TypeScript 中 此语法是错误的 因为 TS 编译器显示以下消息
  • 在 HTML5 中堆叠多个画布

    我试图使用相互堆叠的四块画布 但除了顶部画布的内容外 它们的内容不会显示 我按照我希望它们显示的顺序将 z index 值放入其中 但只有最上面的一个显示内容 它们的位置是绝对的 z 索引是 1 2 3 和 4 是否还有其他原因导致它们不显
  • 在 JavaScript 中对数组进行排序

    我正在尝试对内部包含整数的数组进行排序 例如 var array 123 3 745 4 643 5 643 2 我如何对其进行排序才能返回类似以下内容的内容 array 745 4 643 2 643 5 123 3 您可以将自定义比较函
  • 无法获取子 DOM 元素

    注 由于问题有点复杂 为了可读性对代码进行了抽象 We ve a
  • 查找第一个可滚动父级

    我遇到这种情况 需要将元素滚动到视口中 问题是我不知道哪个元素是可滚动的 例如 在纵向中 主体是可滚动的 而在横向中 它是另一个元素 还有更多情况会更改可滚动元素 现在的问题是 给定一个需要滚动到视口中的元素 找到其第一个可滚动父元素的最佳
  • 过滤文件上传仅用于文本文件

    我使用的是 Firefox 版本 14 0 1 我需要过滤上传文件窗口以仅显示 txt files 我的浏览器不仅仅支持文本文件 text plain 我可以通过指定此格式来限制图像文件 image 但我只需要过滤文本文件在文件选择器窗口中
  • ChartRangeFilter 作为谷歌时间轴图表的缩放功能,可使用数据视图从专用谷歌电子表格中读取数据

    我的目标是整合Whitehat 提供的这种缩放功能 https stackoverflow com questions 49306638 google timeline visualization dont change series ro
  • jest.mock() 在测试内部不起作用,仅在测试外部起作用

    我有一套简单的测试 在某些情况下我想模拟一个模块 而在某些情况下则不想 然而 jest mock 仅当将其置于测试之外时才有效 任何人都知道为什么会这样以及我做错了什么 这是我想要模拟的函数的实际导入 import hasSupport g
  • 如何在 blob 类型中使用 UTF-8?

    我必须通过 csv 文件导出表 csv 文件数据来自服务器 按 Blob 类型 Blob size 2067 type text csv async exportDocumentsByCsv this commonStore setLoad
  • 在 Nestjs 的我的模块中导入另一个模块的存储库

    我正在尝试使用 Nestjs 构建一个应用程序 目前我有两个模块 用户和身份验证 其结构如下 我需要注射用户服务 into 认证服务为了与User实体 所以首先我注入了用户存储库 into 用户服务并导出服务 用户 模块 ts import
  • HighCharts - 两个 Y 轴,一个具有最大值

    我在使用 Highcharts 时遇到问题 我已将右 Y 轴设置为 min 0 和 max 100 它是 但它不起作用并生成 125 百分比 怎么了 http jsfiddle net SdTcU http jsfiddle net SdT
  • 当来自 Mozilla Firefox 和 MS Edge 上的剪贴板时 Alpha 会变成黑色

    我正在使用代码从这里 https stackoverflow com a 15369753 5875416将剪贴板中的图像粘贴到页面上 它在所有浏览器 Chrome Firefox Edge 和 Opera 中都能正常工作 问题是 当图像是
  • 如何对对象数组调用reduce来求和它们的属性?

    说我想求和a x对于中的每个元素arr arr x 1 x 2 x 4 arr reduce function a b return a x b x gt NaN 我有理由相信a x is undefined在某一点 以下工作正常 arr
  • 何时使用node.js、sinatra、rails? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这 3 种语言 框架的最佳用途是什么 混合所有 或 2 个 有用吗 如果您正在构建一个完整的 Web 应用程序 您可能应该使用 Rails 因为
  • 如何从 fetch API 返回 json 响应

    我有一个像这样的函数 check auth fetch Urls check auth credentials include method GET then response gt if response ok return respon
  • localStorage 获取 NULL?

    我不知道为什么 因为我之前已经这样做过并且工作正常 我认为这可能是因为浏览器问题 错误 localStorage setItem foo bar alert localStorage getItem foo 我使用的是 Firefox 3

随机推荐

  • 用汇编语言访问数组元素(Windows)

    我在汇编语言中遇到问题 我必须访问数组的元素 假设数组包含星期几 像太阳 星期一 星期二 星期三 我必须访问数组的第二个索引 我怎样才能做到这一点 汇编中的索引基本上与 C C 相同 除了一个区别 您必须知道数据元素的大小 例如 要循环遍历
  • Angular2 - 使用服务的组件之间的交互

    我有两个组件 A 和 B 其中组件 A 包含一个按钮 我希望当用户单击此按钮时 在组件 B 上触发一个功能 a a
  • 混合模式程序集是针对运行时版本“v2.0.50727”构建的

    我收到以下异常 混合模式程序集是针对运行时版本 v2 0 50727 构建的 如果没有附加配置信息 则无法在 4 0 运行时中加载 因为我试图从我的 WPF 程序导出水晶报告 我已经在 app config 中添加了以下内容
  • TypeScript 类型不适用于扩展运算符

    我有一个 redux 风格的减速器 我正在使用 ngrx 它返回特定类型 当我在返回对象中使用展开运算符时 打字稿 linter 不会捕获无效属性 这是我的界面 interface MyState firstName string last
  • 框架内元素的选择器(具有相同的原点)

    我有一个具有以下结构的网页 index jsp包含 div test is here div 我需要一个 jQuery 选择器来直接访问div test 到目前为止我只能这样写 frames 0 document body 或这个 fram
  • 将 ARFaceGeometry 保存到 OBJ 文件

    在 iOS ARKit 应用程序中 我一直在尝试保存ARFaceGeometry数据到 OBJ 文件 我按照这里的解释 如何从 AVDepthData 制作 3D 模型 但是 OBJ 未正确创建 这是我所拥有的 func renderer
  • 在休眠中使用 inverse true

    我正在浏览 hibernate 文档并遇到了逆属性的概念 我是 Hibernate 的新手 所以我觉得很难正确理解这个概念 http docs jboss org hibernate orm 3 3 reference en US html
  • 在自定义 ListAdapter 类中显示 AlertDialog

    我很难处理显示AlertDialog自定义内ListView扩展了一个类BaseAdapter AlertDialog Builder alertbox new AlertDialog Builder getParent getApplic
  • 如何获取 Cassandra 中最后插入的行?

    我想获取 Cassandra 表中最后插入的行 如何获得 任何想法 我正在开发一个项目 用 cassandra 替换 mysql 我想摆脱所有 sql 查询并将它们全部写在 cassandra 中 只是为了传达一点理解 与所有 Cassan
  • 如何继承方法但具有不同的返回类型?

    给定以下课程 ClassA public ClassA DoSomethingAndReturnNewObject ClassB ClassA ClassC ClassA 有没有办法得到ClassB and ClassC继承方法但将返回类型
  • 如何在Delphi中使TImage透明?

    在表格上我有两个 TImage 顶部的 TImage 应该是透明的 这样我们就可以看到下面的内容 如何更改 TImage 透明度级别 Example 通常的方法是将所有图形绘制到一个目标画布 可以是 TImage 的位图 但即使有许多重叠的
  • iOS 7中UISearchDisplayController的全屏后台拦截触摸事件

    我有一个UITableview不占据整个屏幕 截屏 在 iOS 6 中一切正常 但是在 iOS 7 中 当用户搜索时 搜索结果表占据了整个视图 截屏 为了解决这个问题 我尝试按照中所述手动设置框架这个答案 现在外观是正确的 截屏 但现在显示
  • 如何将内存中的wav文件转换为mp3?

    我有一个在 Asp Net MVC 5 框架之上使用 C 编写的应用程序 我的目标是调用第三方服务来下载波形文件 然后我想把这个文件转换成mp3 最后 我想将 mp3 文件返回为 byte 以允许用户直接从内存下载它 这是我的代码最终的结果
  • 如何在每次推送提交时运行 GitHub 工作流程

    我有一些测试 我想在我的存储库的每次提交上运行 我的仓库中有以下脚本 name CI on push jobs build runs on ubuntu latest steps uses actions checkout v2 run e
  • 从内容提供者返回内存映射的InputStream?

    在内容提供者消费者的客户端 我可以执行以下操作 以获得用于读取图片的正确输入流 InputStream is getContentResolver openInputStream pictureUri 这是一个很好的 API 并且在服务器端
  • 无法在测试中将应用程序委托强制转换为应用程序委托

    我正在 Swift 中进行单元测试 并且遇到了问题 每次运行测试时 我都会收到错误 Could not cast value of type app AppDelegate to app Tests AppDelegate 我确保 AppD
  • 将 json 数组转换为 java 列表对象 [重复]

    这个问题在这里已经有答案了 我得到了一个json数组从服务器response id 1 name John age 20 id 3 name Tomas age 29 id 12 name Kate age 32 我想用gson将上面的js
  • Ionic:IOS 11 中 wkwebview 底部的空白

    将 IOS 更新到 11 版本后 我遇到了问题wkwebview plugin在我的应用程序中 Ionic 命令发布 iOS 11清单但问题是在清单中的所有步骤之后仍然存在 ios平台版本4 4 0 任何 SIM 卡 iPhone 5s 6
  • 收到响应后使用 Chrome webRequest 进行 URL 转发

    我正在尝试创建一个利用 Chrome 的 Chrome 扩展网络请求模块执行重定向到从最初访问的 URL 获得的 URL 为此 我只想使用 Chrome 的 webRequest 函数 例如 onBeforeSendHeaders onHe
  • 随机失败的测试笑话和超级测试 Node.js

    长话短说 我正在开发 RESTapi 它在 movies 路由的 POST 请求上获取电影标题 从外部 api 获取有关该电影的信息并将该对象保存到数据库中 在 POST comments 上 您将评论添加到不同的集合中 但每个评论都有一个