问题标签 [frisby.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1502 浏览

api - 使用 RestAPI 自动化测试的工具和框架?

我正在寻找应该是开源工具的 RestAPI 自动化工具。没有得到应该使用哪个工具和框架。

任何人都可以为我推荐用于 API 自动化测试的好工具和框架吗?

0 投票
1 回答
654 浏览

rest - 有什么方法可以确保 frisby.js 测试 API 调用按顺序进行?

我正在对 API 进行一系列简单的测试:

  1. 创建一个用户资源POST
  2. 请求用户资源GET
  3. 删除用户资源DELETE

我有一个 frisby 测试规范文件mytest_spec.js。我将测试分为 3 个独立的步骤,每个步骤都有自己的toss()类似:

很基本的东西,对。但是,据我所知,不能保证它们会按顺序执行,因为它们是异步的,因此如果用户在运行时不存在,我可能会在测试 2 或 3 中得到 404。

有谁知道在 Frisby 中创建顺序测试的正确方法?

0 投票
2 回答
453 浏览

node.js - frisby.js .post() - 在正文中发送 xml 时遇到问题

我正在尝试使用 frisby.js 测试一些 API。我在通过该.post()方法发送一个 xml 块时遇到了麻烦。我可以在 Postman 中做到这一点。

这是我的代码:

这是输出:

我试过有/没有'Content-Length'

我试过 'Content-Type': 'application/xml' 和 'Content-Type': 'application/xml;charset=UTF-8'

我认为问题在于显示的.inspectRequest()事实

body: null,

当我查看 NodeJS 请求的成功邮递员“生成代码”时,它显示了一个正文:

我不知道为什么 frisby 没有显示尸体(因此没有发送一个?)即使我把xml_body它放在应该去的地方。

0 投票
1 回答
505 浏览

javascript - 将 Frisby 测试部署到 AWS Lambda 时未定义 Jasmine

我正在尝试将 Frisby.js 测试部署到 AWS Lambda 并不断收到参考错误。我已经包含了 Lambda 的输出日志、有问题的代码以及 package.json 依赖项。有人在部署到 Lambda 之前遇到过这样的问题吗?

Lambda 输出日志:

测试文件:

package.json 依赖:

0 投票
2 回答
686 浏览

javascript - 如何验证 Frisby 测试中的状态码是 200 还是 201

我正在使用frisbyv0.8.5 和jasimine-node. 对于frisby预期的返回 http 状态代码,有以下断言:

如果端点具有单一的预期状态,这很好用,但在某些情况下(如 POST 端点),如果资源已经存在,您可能会返回一个201for created 或 a 。200

frisby 有什么方法可以检查几个可接受的响应状态代码?

0 投票
1 回答
134 浏览

node.js - 如何使用 jasmine-node 操作 API 响应和断言

我正在编写由 Jasmine-node/Frisby.js 驱动的 API 测试。响应有一个对象,该对象具有一些纪元时间(unix 时间;13 位)。我需要根据另一个已知的纪元时间值来断言该时间。现在,我不需要精确到毫秒——对我来说,断言日、月和年就足够了。

有没有办法操纵响应时间戳,只获取日、月和年并与我的基线进行比较?

谢谢。

0 投票
2 回答
335 浏览

api - API 自动化 - 是否有可能得到 post call 的响应

我正在学习如何在 gmail.api 上使用 frisby.js 自动化 API。我想创建一个测试,在其中创建和删除(或发送)草稿消息。

所以我写了一个创建草稿的测试,我的问题是 - 我可以编写一个代码,至少从我的 Post 调用中获取生成的响应的 ID 吗?

所以,澄清一下,我想写这个^测试的另一部分

脚步:

  1. 我创建了一个草稿消息
  2. 我希望我的测试自动获取刚刚创建的草稿的 ID
  3. 所以我可以删除它\发送它

谢谢!

0 投票
1 回答
274 浏览

node.js - 在 Frisby 中的对象中计算数组中的对象

我开始学习 FrisbyJS 并尝试创建一些断言。

我得到一个看起来像这样的 json

我想:1.计算文章对象的数量2.验证文章数组中的数字X是否有一个值为“123-123002”的变量

我怎样才能在 Frisby 做到这一点?

我目前的代码是:

0 投票
0 回答
547 浏览

javascript - package.json 中定义的 npm 脚本抛出错误

我已经安装了这个eslint包并添加了一系列脚本到package.json.

在运行这些脚本时,我遇到了喜忧参半的情况。npm run test, nom run coverage,nom run doc所有运行都没有错误,但运行脚本npm run acceptance然后npm run linter抛出一系列错误,(我复制了下面的 linter 示例)。

验收测试甚至不会在运行之前启动脚本。为什么我会收到这些错误?的内容npm-debug.log是:

0 投票
1 回答
70 浏览

javascript - 在运行 frisby 测试之前将数据存储在 var 中以在 REST API 路由中用作参数

我有使用参数(电子邮件和令牌)的路由,我想在 frisby 测试中传递它们,但在运行测试之前,我必须在我的数据库(mongo)中获取这些数据。

问题是我的测试在我获得数据之前运行(或不运行)。

这是代码:

函数 test() 应该在数据库关闭后运行,但我得到以下结果:

0 秒内完成 0 次测试,0 次断言,0 次失败,0 次跳过 连接到数据库 virtus-app@email.com

测试结果应该出现在我的 console.log 输出之后。我相信测试不会运行,如果它们运行,那是在我获得数据之前。

有什么帮助吗?