Unit testing 使用Axios和Jest测试简单GET请求

Unit testing 使用Axios和Jest测试简单GET请求,unit-testing,jasmine,axios,jestjs,Unit Testing,Jasmine,Axios,Jestjs,我正在使用axios0.18.0,jest22.4.2,我正在尝试基于和使用axios和jest测试一个简单的请求 一旦通过默认超时时间间隔(在本例中为30秒),测试将给出以下错误消息: Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL 而且它永远不会到达console.log语句 知道我在这里遗漏了什么或者如何调试吗?因此,

我正在使用
axios
0.18.0
jest
22.4.2
,我正在尝试基于和使用axios和jest测试一个简单的请求

一旦通过
默认超时时间间隔
(在本例中为30秒),测试将给出以下错误消息:

Error: Timeout - Async callback was not invoked within timeout 
specified by jasmine.DEFAULT_TIMEOUT_INTERVAL
而且它永远不会到达
console.log
语句


知道我在这里遗漏了什么或者如何调试吗?

因此,问题在于使用依赖项,而一旦配置了依赖项,它似乎就永远不会允许HTTP请求在测试中通过,即使您没有在特定测试中使用它(如原始问题示例中)


因此,为了解决这个问题,所有相关的请求测试都必须定义mock才能工作(或者,如果您希望测试真正的API请求,则完全删除依赖项)。

不过,这实际上不是一个单元测试。示例测试实际上是测试GitHub是否工作,而不是测试您的组件。您可能会看到
axios模拟适配器
,它非常有用,并且很容易模拟您要测试的端点。你是对的,但是我通常测试真正的请求,以确保一切都正常工作,一旦工作正常,我会添加用于拦截请求的mock(我通常使用nock)。无论如何,谢谢你的建议,我会试试看:)
Error: Timeout - Async callback was not invoked within timeout 
specified by jasmine.DEFAULT_TIMEOUT_INTERVAL