Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法使用Enzyme find()找到DOM元素_Javascript_Reactjs_Jestjs_Enzyme - Fatal编程技术网

Javascript 无法使用Enzyme find()找到DOM元素

Javascript 无法使用Enzyme find()找到DOM元素,javascript,reactjs,jestjs,enzyme,Javascript,Reactjs,Jestjs,Enzyme,我有一个记忆游戏,我想测试一下,如果点击一张翻过的记忆卡,是否会显示图像,但我无法使用酶获得元素的引用。让我概述一下用例: 向用户显示存储卡图像 用户单击下面的蓝色按钮。所有卡都已“翻转”,且onClickhandler处于活动状态 在这一点上,当一张卡片被点击时,它被翻转并且图像可见。我想写一个测试这样做,并测试是否有2个相同的卡计数等,但我不能参考所选卡上的任何道具 这是我的测试: describe("Test the puzzle", () => { c

我有一个记忆游戏,我想测试一下,如果点击一张翻过的记忆卡,是否会显示图像,但我无法使用酶获得元素的引用。让我概述一下用例:

向用户显示存储卡图像

用户单击下面的蓝色按钮。所有卡都已“翻转”,且onClickhandler处于活动状态

在这一点上,当一张卡片被点击时,它被翻转并且图像可见。我想写一个测试这样做,并测试是否有2个相同的卡计数等,但我不能参考所选卡上的任何道具

这是我的测试:

   describe("Test the puzzle", () => {
const component = mount(<Board />);
it("should show 1 turned card when clicked", () => {
    const button = component.find(".button");
    const card = component.find(".card");
    const turnedCards = [];

    expect(button).toBeDefined();
    expect(card).toBeDefined();
    act(() => {
        button.props().onClick({});
    });
    card.props().onClick({});
});
“改为找到0。”表示此处没有选择DOM元素,即使开发工具显示div.class元素(实际上在本板中为36)


这很奇怪,因为我能够选择按钮(
constbutton=component.find(“.button”);
)并执行以下操作

我错过了什么

"react": "^16.13.1",
"react-dom": "^16.13.1",
"@testing-library/jest-dom": "^5.11.5",
"enzyme": "^3.11.0",
"enzyme-adapter-react-16": "^1.15.5",

你能包括
组件吗?
const-button=component.find('button').simulate('click')
应该添加我想要访问的元素是一个React功能组件,如果这有什么区别的话?我认为这不会有什么区别。你试过我给你的模拟点击选项吗?
button.props().onClick({});
"react": "^16.13.1",
"react-dom": "^16.13.1",
"@testing-library/jest-dom": "^5.11.5",
"enzyme": "^3.11.0",
"enzyme-adapter-react-16": "^1.15.5",