Ошибка ферментного теста TypeError: невозможно прочитать свойство getContext, равное null - PullRequest
0 голосов
/ 06 августа 2020

Я реализовал тестирование файла холста с использованием Jest и фермента, но всякий раз, когда я запускаю тест, он говорит TypeError: Cannot read property 'getContext' of null

Итак, вот мой тестовый код:

import React, { Component } from "react"
import { shallow } from "enzyme"
import { ReferenceImageCanvas } from "./../index"

describe("<ReferenceImageCanvas />", () => {
  const props = {
    dispatch: jest.fn(),
    canvasID: "canvas-1",
    reset: true,
    scale: 1,
    imgSrc: ""
  }

  it("renders when loading true", () => {
    const wrapper = shallow(<ReferenceImageCanvas {...props} />)
    console.log(wrapper.debug())
  })
})

При выполнении этого теста npm я получаю следующие ошибки:

<ReferenceImageCanvas /> › renders when loading true

    TypeError: Cannot read property 'getContext' of null

      32 |     const imageSrc = this.props.imgSrc
      33 |     const canvas = document.getElementById(this.state.canvasId)
    > 34 |     const ctx = canvas.getContext("2d")
         |                        ^
      35 |     const baseImage = new Image()
      36 |     baseImage.src = imageSrc
      37 |     this.setState({

      at ReferenceImageCanvas.componentDidMount (src/canvas/referenceImageCanvas/index.js:34:24)
      at Object.it (src/canvas/referenceImageCanvas/__test__/index.test.js:16:21)

Хотя моя программа реагирования работает нормально.

Это ошибка тестирования или я делаю что-то не так не понимаю

...