所以fetch mock jest是基于fetch mock它不是jest fetch mock.(
https://www.npmjs.com/package/fetch-mock-jest
http://www.wheresrhys.co.uk/fetch-mock/
我遇到的问题是:
// inside my test file
fetchMock.restore().mock('https://someSiteOnTheInternet.com', someResponse)
// inside my tested file
fetch('https://someSiteOnTheInternet.com').then(...)
以上操作有效,但只要我尝试本地路由它就不再有效
// inside my test file
fetchMock.restore().mock('/myProxy', someResponse)
// inside my tested file
fetch('/myProxy').then(...)
这个("/myProxy"(将失败,并出现错误:
console.error node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/virtual-console.js:29
Error: Error: connect ECONNREFUSED 127.0.0.1:80
你知道我在这里做错了什么吗?
您可以在运行测试之前设置DEBUG=fetch-mock*
,这将提供大量输出来显示fetch mock内部的情况。
您可能与docker发生冲突,你的前部码头化了吗?你的后端有docker吗?你能停止docker/重新启动你的机器,试着只在没有docker的情况下运行你的前端吗?