我想在react Jest测试中使用实际的API。因为测试环境是JSDom,所以我不能进行跨域请求。在开发中,通过在package.json文件中指定代理可以很容易地解决这个问题,但是这并不适用于测试套件:npm test
。
我知道在创建一个新的JSDom示例时可以指定一个代理(参见文档):
const resourceLoader = new jsdom.ResourceLoader({
proxy: "http://127.0.0.1:9001",
});
现在我找不到在我的应用程序中使用它的方法,该应用程序是使用create-react-app(CRA)创建的...所以我的问题是,在通过CRA应用程序运行Jest时,是否有某种方法可以指定代理?
谢谢!
1条答案
按热度按时间ql3eal8s1#
我刚知道怎么做。有一个Jest配置选项用于设置JSDom示例的url:"testURL"。但是,当在package.json中指定它时,它将不起作用,例如:
真正起作用的是直接在NPM脚本中指定该选项。这将使NPM测试脚本看起来像:
希望它能帮助有同样问题的人