小编And*_*ndy的帖子

使用 Chai\Mocha 设置进行单元测试时,如何让 JSDOM 与打字稿一起使用?

我一直在尝试让 JSDOM 在我的打字稿单元测试中工作,但经过多次尝试,我不断收到以下错误(或以下错误的变体)

TypeError: _jsdom.JSDOM is not a constructor
Run Code Online (Sandbox Code Playgroud)

代码片段如下

import React from 'react';

import { act } from 'react-dom/test-utils';
import { expect } from 'chai';
import { mock, instance, verify, anyOfClass } from 'ts-mockito';
import { JSDOM } from 'jsdom'
import { TestApp } from '../ts/ExampleForTestingReact';

let rootContainer: HTMLDivElement;
const { window } = new JSDOM('<!doctype html><html><body></body></html>');
Run Code Online (Sandbox Code Playgroud)

我的包json如下

{
  "name": "app",
  "version": "1.0.0",
  "private": true,
  "devDependencies": {
    "@babel/cli": "^7.8.4",
    "@babel/core": "^7.9.0",
    "@babel/node": "^7.8.7",
    "@babel/preset-env": "^7.9.0",
    "@babel/preset-react": "^7.10.1",
    "@babel/preset-typescript": "^7.9.0", …
Run Code Online (Sandbox Code Playgroud)

mocha.js jsdom chai typescript reactjs

5
推荐指数
1
解决办法
2886
查看次数

标签 统计

chai ×1

jsdom ×1

mocha.js ×1

reactjs ×1

typescript ×1