【问题标题】:fetch-mock: GLOBAL is not definedfetch-mock:未定义 GLOBAL
【发布时间】:2016-02-25 16:33:24
【问题描述】:

我正在使用 fetch-mock 为使用 isomorphic-fetch 的函数编写单元测试用例。这是示例测试套件:

 import connect from '../../src/utils/connect';
 import fetchMock from 'fetch-mock';

 describe('Unit | Utils | connect function', () => {
  it('should make a request', (done) => {
     const urlToTest = 'http://localhost:3000/api/v1/users';
     fetchMock
      .mock(urlToTest, 200)
      .getMock();

    const response = connect(urlToTest);
    expect(response);
    done();
  });
});

运行测试用例时出现错误

/my_app/app/node_modules/fetch-mock/src/server.js: GLOBAL 未定义

我无法调试此问题。谁能让我知道我做错了什么。谢谢

【问题讨论】:

    标签: javascript unit-testing reactjs es6-promise jestjs


    【解决方案1】:

    如果您使用的是 jest,请将 setupTestFrameworkScriptFile 部分添加到 package.json:

    {
      ...
      "jest": {
        ...
        "setupTestFrameworkScriptFile": "setupTestFrameworkScriptFile.js"
      }
    }
    

    将此行添加到setupTestFrameworkScriptFile.js:

    global.GLOBAL = global;
    

    【讨论】:

    • 它不工作。我在 unmockedModulePathPatterns 中为“isomorphic-fetch”和“fetch-mock”添加了一个条目,并在 TestFrameworkScriptFile 中添加了上述常量。我的测试用例都没有成功运行:(
    猜你喜欢
    • 1970-01-01
    • 2019-10-24
    • 1970-01-01
    • 2016-07-28
    • 1970-01-01
    • 1970-01-01
    • 2018-06-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多