在此示例中,为什么变量foo
不引发ReferenceError
?没有变量声明,但是在呈现DOM之后,它显然在范围内。 DOM节点ID和javascript名称空间之间是什么关系?我正在使用jest
运行它。
import React from 'react';
import { render } from '@testing-library/react'
test('renders a div', () => {
const { utils } = render(<div id="foo"/>)
expect(foo).toBe(true)
})
笑话报告:
Expected: true
Received: <div id="foo" />
我真的希望测试会崩溃,因为在我的真实示例中,我意外地将未定义的变量传递给expect()
,该变量恰好与共享渲染的DOM节点ID的名称相同。