问题标签 [nock]

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 投票
1 回答
587 浏览

node.js - sinon spy 作为回调没有被调用

我有我的源文件,我为此编写了测试用例

这是我的摩卡测试用例

我的两个测试用例都失败了,因为它说回调被调用了 0 次。但是回调总是被调用。请帮忙。

0 投票
0 回答
240 浏览

asynchronous - 我是否必须使用 `setTimeout` 在测试中测试反应组件的异步代码?

我有一个反应表单,它在提交表单时向后端发送请求:

在测试中,我模拟了表单提交并检查响应http代码的处理是否正确:

你可以看到我必须等待100ms才能检查window.alert

有没有更好的方法呢?

这是一个您可以克隆并在您的计算机上运行的项目:https ://github.com/js-demos/express-react-register-test-demo

0 投票
1 回答
80 浏览

express - 测试该路由有回调的 Express 路由

我想模拟对调用 api 的快速路由的 curl 请求。我找到了很多关于如何执行此操作的文档,但我一直遇到问题,因为我的代码中有回调。

当我运行当前测试时,出现错误:超时 200 毫秒

这是我的测试,我尝试使用 nock 作为存根服务,任何帮助将不胜感激!!!

0 投票
3 回答
2409 浏览

reactjs - redux - 如何使用 nock 测试异步操作

我按照 redux.org 的基本示例来测试异步操作

动作.js

我的代码是这样的:

测试.js

我遇到的问题是,nock 没有阻止请求,它让函数 getGoodData 向 google.com 发出真正的请求。我究竟做错了什么?

错误的屏幕截图:

在此处输入图像描述

这是演示:https ://github.com/craigcosmo/react-redux-test

安装:npm i

测试: npm run test

打开网址:http://localhost:5051/webpack-dev-server/

0 投票
2 回答
154 浏览

javascript - 在测试中使用模拟 ajax 调用的目的是什么?

我在这里学习 TDD React并且不了解以下测试情况:

nock使用伪造请求的目的是什么?这个请求没有做任何事情,我不确定响应的去向。我认为TDD方法是编写测试(从包装器开始的代码),看到它失败,然后在实际组件中使用真正的ajax调用进行测试。我不明白 nock 在这里做什么。

0 投票
0 回答
63 浏览

reactjs - Nock 不拦截 redux action creator 请求

我正在尝试使用nock. 我正在关注 redux文档。这是我的代码

测试在断言处失败,因为 nock 向服务器发出真实请求并接收到真实令牌,而不是假令牌。这是我可以在服务器端看到的日志

我错过了什么 ?为什么nock即使使用nock.disableNetConnect();

0 投票
1 回答
943 浏览

javascript - 在 nock 中拦截所有带有不同动词的请求

这就是我的一个拦截函数现在的样子:

我想避免重复,并通过执行以下操作为其提供更大的灵活性:

有没有办法这样做???

0 投票
0 回答
1254 浏览

reactjs - Nock 不存根 fetch()

我有一个要在我的 React/Redux 应用程序中测试的操作:

这是我的测试:

当我运行测试时,我不断收到错误:

看起来我的测试对 nock 不太满意。

我做错了什么以及如何成功存根 fetch() 请求?

0 投票
1 回答
1977 浏览

node.js - Providing sessions when testing middleware in Express

I am attempting to test middleware functions in my Express application using supertest and nock, but am having issues where the routes I have setup are checked by an earlier piece of middleware to ensure a session property exists on the incoming req object.

I need to somehow mock out the session object prior to running the tests, but am unsure how to approach this. First let me share some code:

router.js

routes.js

helpers.js

routesController.js

routesController.spec.js

My test fails as the value for res.status is 401. I am using express-session, but I wondered if there was some way I could get at the req.session object in my test suite and set the value of the accessToken property prior to running any of the tests.

Can anyone offer any advice\thoughts please?

Thanks

0 投票
1 回答
5013 浏览

javascript - 使用 Nock 模拟 NodeJS 请求和响应

我试图掌握工具Nock以模拟来自我的代码执行调用的请求和响应。我使用 npm request 作为简单的 HTTP 客户端来请求后端 REST API,使用 Chai 请求期望库和 Mocha 来运行我的测试。这是我用于测试的代码:

这是执行 GET 请求的代码:

这个单一的测试通过了,我不明白为什么。看起来它实际上是在打一个真正的电话,而不是使用我的假诺克请求/响应。如果我评论 nock 部分或更改:

它不会破坏测试并且没有任何变化,我没有对我的 nock 变量做任何事情。有人可以用一个清晰​​的例子向我解释如何使用 Nock 在我的 NodeJS http-client 中模拟请求和响应吗?