首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vue-test-utils,jest;ReferenceError:请求未定义

vue-test-utils,jest;ReferenceError:请求未定义
EN

Stack Overflow用户
提问于 2022-06-23 15:35:58
回答 1查看 791关注 0票数 2

我在我的ES6应用程序中使用Request()构造函数进行POST API调用。该实现运行良好,但是我的测试套件(我使用的是Jestvue-test-utils)失败了,出现了以下错误:

ReferenceError:未定义请求

下面是我的测试用例的代码片段:

代码语言:javascript
复制
 it('Expect login to pass validation on submit', ()=> {
    const $router = {
      push : jest.fn()
    }
    // const validateLogin = jest.fn();
    const executeLoginSpy = jest.spyOn(wrapper.vm, 'executeLogin');
    wrapper = mount(Login, {
      localVue,
      vuetify,
      mocks: { $router },
      stubs: ['router-link'],
      data() {
        return {
          login: {
              email: 'test@testmail.com',
              password: 'test@@@@@@@@123'
          }
        }
      }
    });
    const button = wrapper.find('.submit-btn');
    button.trigger('click');
    expect(executeLoginSpy).toHaveBeenCalled();
    expect($router.push).toBeCalledWith('/');
});

我还使用Request()附加了我的实现的一个片段。

代码语言:javascript
复制
  const request = new Request('/api/token', {
    method: 'POST',
    body: formData,
  });

任何帮助都将不胜感激。提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2022-06-27 15:39:36

问题是fetch和其他API在您的节点上不可用。它们可以在浏览器中使用。

https://www.npmjs.com/package/jest-fetch-mock安装为一个dev依赖项,并正确设置它。Requestfetch将如预期的那样工作。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72732867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档