【问题标题】:In a Jest test where does the window object come from?在 Jest 测试中,窗口对象来自哪里?
【发布时间】:2016-05-03 11:08:13
【问题描述】:

我有一个简单的 Jest 测试:

describe('test', function() {
  beforeEach(function() {});
  it('test', function() {
    console.log(window.document); //a real or nearly real document
  });
});

我需要一些模块,例如bootstrap - 但没有任何东西看起来像它可以提供一个窗口对象 - 上面有一个文档对象。

我的问题是 - 谁/什么在提供这个窗口(和 window.document)对象? window 对象类似于浏览器窗口——尽管缺少一两个方法。但我看不出是谁提供的。我对 node.js 和 webpack(测试是用 webpack 构建的)知之甚少,不知道从哪里开始。

它不是 ReactDOM。是杰斯特吗?还是节点?

【问题讨论】:

    标签: reactjs jestjs


    【解决方案1】:

    快速查看,我认为是jsdom

    基于this 博文:

    它简单、标准且独立(基于 JSDom 并构建在上面 茉莉花)。

    查看package.json中的jest repository

    "dependencies": {
        "chalk": "^1.1.1",
        "cover": "^0.2.9",
        "diff": "^2.1.1",
        "graceful-fs": "^4.1.3",
        "istanbul": "^0.4.2",
        "jest-environment-jsdom": "^12.0.2",
        "jest-environment-node": "^12.0.2",
        "jest-haste-map": "^12.0.2",
        "jest-jasmine1": "^12.0.2",
        "jest-jasmine2": "^12.0.2",
        "jest-mock": "^12.0.2",
        "jest-util": "^12.0.2",
        "json-stable-stringify": "^1.0.0",
        "lodash.template": "^4.2.4",
        "mkdirp": "^0.5.1",
        "optimist": "^0.6.1",
        "resolve": "^1.1.6",
        "sane": "^1.2.0",
        "which": "^1.1.1",
        "worker-farm": "^1.3.1"
      },
    

    【讨论】:

    • 是jsdom。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-13
    • 2018-05-25
    • 2013-06-07
    • 2018-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多