问题标签 [axios-mock-adapter]

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 回答
522 浏览

javascript - 发出 axios 请求的组件被挂载两次以使异步测试通过,如果它在测试失败时被挂载。为什么

我正在调用内部服务器以将任何数据返回给我,为了模拟这个,我正在使用 axios-mock-adapter 并发送回一个包含 5 个东西的数组。我必须安装组件两次才能通过此测试。这是我的组件:

}

这是测试:

不知道为什么我必须安装组件然后再次安装它。有人有想法么?

0 投票
0 回答
272 浏览

unit-testing - 如何用 axios 测试异步功能?

我需要使用 mocha 测试异步功能。

试图测试从 axios 返回 Promise 的函数。使用 axios-mock-adapter 浏览了许多示例来解决我的问题。但是:axios 发送真实请求,而不是按预期模拟。

逻辑.js

预计会得到 200 个响应和之前设置的模拟数据。为什么我没有得到我需要的响应?有人可以帮忙吗?

0 投票
2 回答
2814 浏览

javascript - axios-mock-adapter 与预期的 url 不匹配

我曾经使用 axios-mock-adapter 取得了巨大的成功,但最近几次我尝试使用它,我的路由似乎从未匹配,它仍在尝试执行一个真正的端点。

为什么这个单元测试仍然调用 example.com 并返回 404?我原以为它会返回 500。

测试/libs/orgService/index.spec.js

src/libs/orgService/index.js

0 投票
2 回答
6647 浏览

javascript - 如何在 Axios Mock 适配器中使用路径参数

我正在使用 axios 模拟适配器来模拟我的反应前端的数据。目前我正在使用 param 并且它正在工作。但我需要支持它来关注 url

.../发票/1

这是我的代码



0 投票
0 回答
930 浏览

vue.js - 无法使用 Vuejs 在 Storybook 中使用 axios-mock-adapter 模拟 axios api 调用

一直在尝试在我的 VueJS 项目中使用故事书,但我坚持使用模拟 api 调用。我尝试使用 axios-mock-adapter 没有运气。

我的故事书文件代码是:

我用对了吗?

0 投票
1 回答
4813 浏览

javascript - 如何在 axios 中解决 Promise 和 spy 函数

axiosSpy 是从下面的代码成功

但它并没有深入到内部来解决成功的结果CB

抛出错误为:successCB从不调用

我做错了什么,我应该在这里期待什么?

我只能使用 ES6 解决方案。

0 投票
0 回答
723 浏览

node.js - axios-mock-adapter 如何在 GET 请求中返回对象?

有一段代码使用 axios-mock-adapter 并通过 GET 请求返回一个对象:

User 是一个具有不同数量值的 JSON 对象。这怎么可能?它在 URL 中会是什么样子?我正在研究代码块以了解如何在没有 axios-mock-adapter 的情况下做到这一点。

0 投票
4 回答
76242 浏览

unit-testing - Axios 捕获错误请求失败,状态码 404

我正在测试一个使用 Axios 的登录组件。我尝试用 模拟 Axios axios-mock-adapter,但是当我运行测试时,它仍然会出错:

如何在测试中正确模拟 Axios?

login.spec.js:

登录.vue

0 投票
2 回答
15489 浏览

reactjs - 为什么我的 api 模拟返回 404 错误?

axios-mock-adapter用来模拟我的 API,它可以正常工作,但在一个模拟中它返回 404 错误,我找不到原因。

这里有带测试沙箱,你可以看到当我们运行测试时,第二次检查失败,因为axios POST调用没有被模拟。我试图删除标题部分,但是当我运行测试时沙箱刚刚崩溃。


API 模拟(测试部分):

我已经检查过了,数据相同,端点相同,但似乎没有正确模拟它。


axios在课堂上调用:

此时,在我的 Jest 测试中,它返回 404 错误,因此它没有模拟我的端点 API(其他工作)。
Utils.getAuth()函数返回带有身份验证令牌的标头。


数据发送

这涉及数据发送的内容(首先是在使用mock的测试调用之前,其次是在测试的函数中,数据日志是发送到api的数据):


更新

仅当我使用POST带有以下标头的请求时才会发生此错误:

在 axios-mock-adapter github 测试页面上看到,最终我们应该headers在没有标签的情况下进行测试:
{headers: {Autorization: "Bearer token"}}become{Autorization: "Bearer token"}
但不幸的是,它并没有比我更好地工作。


解决方案

根据 Matt Carlotta 和他的代码框的响应,我用 2 个固定问题示例修改了的:

  • POST使用 axios*进行请求模拟测试
  • POST使用 axios* 实例的请求模拟测试

* 和axios-mock-adapter

0 投票
1 回答
2670 浏览

vue.js - 使用 mock-axios-adapter 模拟 put 请求

我有一个简单的 Vue 组件,它在创建时获取 API 密钥,并且可以通过单击按钮来更新密钥:

我想用这段代码测试它:

但事实证明只有 get 请求被嘲笑,因为我收到:

更糟糕的是,console.log(mockAxios.history)返回空的 put 数组:

我尝试在 describe 块中定义 mockAxios,并在迭代后对其进行 console.log - 结果证明 put 请求就在这里。但不是在我需要的时候。:)

我究竟做错了什么?也许有一些方法可以检查是否调用了创建的回调并且其中的所有异步函数都已完成?也许我使用 axios-mock 错误?