错误:不变违规:findAllInRenderedTree(...):实例必须是复合组件

2023-11-27

在 JEST 中为 React 文件编写测试用例时,我收到此错误。以下是我的示例代码:

search_basr_test.js

jest.autoMockOff();
global.React = require('react/addons');
jest.setMock('../stores/browser_store.jsx');
beforeEach(function() {
    var search_bar = require('../components/search_bar.jsx');
});
var TestUtils = React.addons.TestUtils;

describe("Test", function() {
    it("should render Test", function() {
            var test = TestUtils.renderIntoDocument(<search_bar/>);
            expect(test).toBeDefined();
    });
    it("renders a list in a box with proper CSS classes", function() {
            var test = TestUtils.renderIntoDocument(<search_bar/>);
            let box = TestUtils.findRenderedDOMComponentWithTag(test, "div");
            expect(box.className).toEqual("sidebar__collapse");
    });
});

search_bar.jsx

return (
        <div>
            <div
                className='sidebar__collapse'
                onClick={this.handleClose}
            >
                <span className='fa fa-angle-left'></span>
            </div>
            <span
                className='search__clear'
                onClick={this.clearFocus}
            >
                {'Cancel'}
            </span>
}

有人能帮我解决这个问题吗?


复合组件是包含 React 组件的组件(不是 div、span...) 方法“findRenderedDOMComponentWithTag”接受复合组件的参数。

尝试直接在您的情况下解析组件(jquery,js,...),因为它不是复合组件

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

错误:不变违规:findAllInRenderedTree(...):实例必须是复合组件 的相关文章

随机推荐

  • 如何检查某个目录是否位于 Bash 的路径上? [复制]

    这个问题在这里已经有答案了 可能的重复 Bash 检测用户的路径中是否有特定目录 给定一个目录 如何确定它是否在 unix PATH 上 正在寻找 shell 脚本 谢谢 凯文 你可以写 if PATH directory you want
  • 如何更改 ggplot 中的标签(图例)?

    我的代码如下 我想更改ggplot的标签 但R总是提醒我 Error in unit tic pos c mm x and units must have length gt 0 我应该怎么办 ggplot mat aes x sales
  • 如何唤醒休眠的 pthread?

    我正在用 C 编写一个程序 我注意到它获得了许多线程 其目的是每隔一段时间做一些事情 其中 有 3 或 4 个 我决定通过编写一个调度程序服务来重构 使用这些线程的其他地方可以订阅该服务 这应该将我随时运行的额外事件线程的数量减少到一个 我
  • 将 TOP 与 GROUP BY 一起使用

    带桌子table1像下面这样 flight orig dest passenger bags 1111 sfo chi david 3 1112 sfo dal david 7 1112 sfo dal kim 10 1113 lax sa
  • std::throw_with_nested 需要 C++11 中的多态类型吗?

    为什么不能编译 尝试使用 Clang 3 4 2 和 GCC 版本 4 7 4 4 8 3 和 4 9 1 include
  • 从外部 div 滚动 div

    查看下面的小型 html 结构示例以了解上下文 看看这个fiddle问题的示例 对小提琴用户的简短说明 向左滚动 垂直滚动条不可见 向右滚动 垂直可见 我希望垂直滚动条始终可见 要求 标题必须保持固定 滚动时可见 长解释 我有一个带有固定标
  • C++:模板和单例模式

    碰巧我需要臭名昭著的单例模式 更好的是 它发生了 所以我需要臭名昭著的 C 模板与该模式的结合 那么 让我烦恼的是 template
  • 事件调度程序应每月执行一次

    我的机器上安装了 Win XP 操作系统和 XAMPP 我需要在每月第一天的凌晨 12 00 00 执行我的事件 调度程序 意思是每个月的1号 例如 1 月 1 日 2 月 1 日 3 月 1 日 和 我还需要在同一事件中调用存储过程 我想
  • 如何在生产中管理 ASP.NET SQL 成员角色/用户?

    如何在生产计算机上设置 asp net sql 成员资格角色 成员资格提供程序 我正在尝试设置 BlogEngine NET 所有文档都说要使用 Visual Studio 中的 ASP NET 网站管理工具 但这在生产计算机上不可用 我是
  • ExtJS按钮样式工具栏[重复]

    这个问题在这里已经有答案了 我想知道是否可以将按钮放入面板的工具栏中 但让它保留按钮的外观 就好像它只是在普通面板中一样 例如 我希望按钮看起来像这样 然而 它看起来像这样 非常感谢 EDIT 创建工具栏的代码 xtype toolbar
  • 稳健的多边形法线计算

    是否有一个好的鲁棒算法来计算凸多边形的法向量 当然是3D 对于三角形 这很容易 取三角形的两条边并计算叉积 vec3 u point 0 point 1 v point 0 point 2 vec3 n normalize cross u
  • 如何将时间戳列映射到JPA类型?

    我正在使用 玩 1 2 4 和 PostgreSQL 9 1 我创建了一个表created at列 类型 timestamp without time zone 它的默认值为now 当我使用该表的实体类获取数据时 问题就出现了 这creat
  • Magento:缩小 HTML 输出?

    magento中是否有任何文件可以输出所有html 我想缩小所有 html 输出 Magento 使用响应对象发送所有输出 所有的输出都会添加到这个对象中 然后它的sendResponse方法被调用 如果你想改变输出 设置一个监听器http
  • UTF-8百分比编码和python

    我试图让 python 给我百分比编码的字符串 我正在与之交互的 API 我认为它使用的是百分比编码的 UTF 8 为 提供 c3 ae 然而 python 的 urllib quote 给出 3F import urllib mystri
  • Java 相当于 Kotlin 中的 arrayof()/ listof()/ setof()/ mapof()

    我只是想知道java是否有像kotlin中那样的arrayof listof setof mapof 等价物 如果没有 有什么方法可以类似地工作吗 我发现它们与java非常不同 顺便说一句 intArrayOf arraylistof ha
  • 如何在 R 中比较两个数据框/表并提取数据?

    在尝试提取下面两个数据帧之间的不匹配项时 我已经成功创建了一个新的数据帧 其中不匹配项被替换 我现在需要的是不匹配的列表 dfA lt structure list animal1 c AA TT AG CA animal2 c AA TB
  • 操作栏显示在其选项卡下方

    当我设置这些属性时 actionBar getSupportActionBar actionBar setDisplayHomeAsUpEnabled true actionBar setDisplayShowHomeEnabled fal
  • 带进度条的文件复制

    我使用了这段代码 using System using System Collections Generic using System ComponentModel using System Windows Forms using Syst
  • 正确处理 VBA (Excel) 中的错误

    我已经使用 VBA 有一段时间了 但我仍然不太确定错误处理 一篇好文章是CPearson com 但是我仍然想知道我以前执行 ErrorHandling 的方式是否完全错误 Block 1 On Error Goto ErrCatcher
  • 错误:不变违规:findAllInRenderedTree(...):实例必须是复合组件

    在 JEST 中为 React 文件编写测试用例时 我收到此错误 以下是我的示例代码 search basr test js jest autoMockOff global React require react addons jest s