Proxy 创建react应用程序:使用代理进行Jest测试

Proxy 创建react应用程序:使用代理进行Jest测试,proxy,jestjs,create-react-app,jsdom,Proxy,Jestjs,Create React App,Jsdom,我想为我的react Jest测试使用一个实际的API。因为测试环境是JSDom,所以我不能进行跨源请求。在开发过程中,通过在package.json文件中指定代理很容易解决这个问题,但是这不适用于通过以下方式运行的测试套件:npm test 我知道在使用()创建新的JSDom实例时可以指定代理: 现在我找不到一种方法将其用于我的应用程序,它是使用CreateReact应用程序(CRA)创建的。。。所以我的问题是,当通过CRA应用程序运行Jest时,有没有办法指定代理 谢谢 我才知道怎么做。有一

我想为我的react Jest测试使用一个实际的API。因为测试环境是JSDom,所以我不能进行跨源请求。在开发过程中,通过在package.json文件中指定代理很容易解决这个问题,但是这不适用于通过以下方式运行的测试套件:
npm test

我知道在使用()创建新的JSDom实例时可以指定代理:

现在我找不到一种方法将其用于我的应用程序,它是使用CreateReact应用程序(CRA)创建的。。。所以我的问题是,当通过CRA应用程序运行Jest时,有没有办法指定代理


谢谢

我才知道怎么做。有一个Jest配置选项可以设置JSDom实例的url:“testURL”。但是,在package.json中指定它时,它将不起作用,例如:

jest: {
    "testURL": "http://localhost:4000"
}
工作原理是直接在NPM脚本中指定选项。这将使NPM测试脚本看起来像:

"test": "react-scripts test --testURL=http://localhost:4000"
希望它能帮助有同样问题的人

"test": "react-scripts test --testURL=http://localhost:4000"