enzyme 相关问题

ReactJS的单元测试库。它由Airbnb开发。它可以与其他JS测试框架一起使用,如Mocha,Jest,Karma等。

语法错误:无法在模块外部使用 import 语句 React JS Antd

为了优化捆绑包大小,我不是从 lib 文件夹获取组件,而是从 es 文件夹导入它。 例子: 从 'antd/es/modal' 导入模态; 因此,在编写测试用例时,它给出...

回答 2 投票 0

将测试用例从 Enzyme 迁移到 RTL

我们正在将应用程序升级到 React 18,并且需要将我们的 tet 从 Enzyme 迁移到 RTL。我正在努力寻找一个好的解决方案来重写我的测试: 函数 useButtonTests( // eslint-

回答 1 投票 0

Jest 是否会在每个测试用例后自动恢复真实计时器?

使用 Jest 和 Enzyme 在 React 中进行测试。 对于反应组件内的一个函数,我使用 setTimeOut 来更改状态。 现在为了在 jest 中测试该函数,我使用 jest.useFakeTimer。 使用...

回答 1 投票 0

测试整个表格用酶反应成分细胞

我正在尝试测试反应组件中的各个行和单元格,该组件的“返回”如下所示: 返回 ( ... 我正在尝试测试反应组件中的各个行和单元格,该组件的“返回”如下所示: return ( <div className="app-body"> <table className="grid"> <tbody> {grid.map((row, rowIdx) => { return <tr className="grid-row" key={rowIdx}> {row.map((node, nodeIdx) => { const { row, col } = node; return <Node key={nodeIdx} row={row} col={col}></Node> })} </tr> })} </tbody> </table> </div> ); 如何测试笑话/酶中的每个细胞? 我一直在努力: describe('test MyComponent', () => { const wrapper = render(<MyComponent />); const table = wrapper.find('table'); const row = render(<tr />) const node = render(<Node />); it('table grid', () => { expect(table).toHaveLength(1); expect(row).toHaveLength(1); expect(node).toHaveLength(1); }); }); 为什么它只期望一个节点? 如何收集表中的所有节点? 它期望为 1,因为只有 1 个 table 元素可供查找(对于 expect(table))。对于另外两个(row和node),您只是渲染单个元素(完全独立于您的MyComponent。如果您尝试计算MyComponent中的表、行和节点的数量,请尝试像这样的: describe('test MyComponent', () => { const wrapper = mount(<MyComponent />); const table = wrapper.find('table'); const row = table.find('tr') const node = table.find(Node) it('table grid', () => { expect(table).toHaveLength(1); expect(row).toHaveLength(whateverYouExpect); expect(node).toHaveLength(whateverYouExpect); }); });

回答 1 投票 0

如何使用 Enzyme 为 React Router 创建 URL 参数的单元测试

我正在尝试使用 React Router 的 Enzyme 来测试 url 参数。到目前为止,该应用程序很简单。我有 App.jsx,它有一个 组件,还有一个 组件和 t...

回答 1 投票 0

jest和enzyme中useState Hook如何设置初始状态?

目前我正在使用带有反应钩子的功能组件。但我无法完全测试 useState 挂钩。考虑这样一个场景,在 useEffect 挂钩中,我正在执行 API 调用并在...中设置值。

回答 11 投票 0

如何在 Jest 中模拟只读属性?

我有一个函数,可以将大写的字符串转换为大写前带有破折号的字符串,并使字符串小写。 格式化类型() { // 在大写字母前添加破折号...

回答 2 投票 0

无法对 moct 商店摩卡酶进行测试

我正在尝试测试按钮是否调度操作,但我得到的是 [],而不是操作类型。该功能在测试之外完全正常工作,这就是为什么我不明白为什么测试失败......

回答 1 投票 0

使用 React 和 Enzyme 测试设置文本值

如何设置文本输入的文本,然后使用 React / Enzyme 测试它的值? const input =wrapper.find('#my-input'); 输入.模拟('改变', { 目标:{ 值:'abc' } } ); 常量 va...

回答 6 投票 0

使用 Jest/Enzyme 测试 Chart.js - 无法创建图表:无法从给定项目获取上下文

我的测试通过得很好,但是出现以下错误。 console.error node_modules/chart.js/src/core/core.controller.js:127 无法创建图表:无法从给定的图表中获取上下文...

回答 2 投票 0

测试作为 prop 从父级传递给子级的异步函数

我有一个父组件,其中有一个handleClick,它作为道具传递给子组件。 父.js _handleClick = async (buttonName, id) => { if(buttonName === '是'){ ...一些我...

回答 2 投票 0

如果使用 Jest/Enzyme 调用内部函数,则进行测试

我要测试的功能如下。我们使用类似于构建器的方法来组装复杂的 URL 结构,以帮助浏览我们的 Web 应用程序。 导入 { useNavigati...

回答 1 投票 0

测试 Material Ui (v5) 抽屉 - 无法读取 null 的属性“scrollTop”

这是一个显示问题的简单示例。 (对于真正的测试来说,切换到浅层测试不是一个选项)。这在materialui v4 中没有发生。 (仅在升级到mui v5后) it('测试抽奖...

回答 3 投票 0

尝试在 Enzyme 测试中模拟 MUI 的 useMediaQuery 挂钩行为

编辑:我能够确定 MUI 的指令在使用 RTL 时可以正常工作。这个问题只发生在酶测试中! 我正在关注有关如何测试 useMediaQuery 的 MUI 文档,...

回答 3 投票 0

等待 fetch() 使用 Jest 进行 React 测试解析?

在 React.Component 实例的 componentDidMount 中,我有一个 fetch() 调用,该调用在响应时调用 setState。 我可以模拟请求并使用 sinon 进行响应,但我不知道 fetch 何时会有

回答 4 投票 0

用笑话和酶模拟 FlatList 动作

我正在为呈现 FlatList 的组件编写一些单元测试,我需要模拟一些操作,例如scrollTo和scrollToEnd。 有人知道我怎样才能达到这个目标吗? 我正在使用 Jest 和 Enzym...

回答 2 投票 0

如何正确模拟useLocation?

我有一个使用 useLocation 挂钩从 URL 获取路径的组件。 const { 路径名 } = useLocation(); useEffect(() => { }, [路径名]); 当我尝试使用 来模拟该位置时, ...

回答 4 投票 0

使用 Jest 通过 props 模拟 React 组件

我有一个 React 组件,其中包含一些其他组件,这些组件依赖于对 Redux 存储等的访问,这在执行完整的 Enzyme 挂载时会导致问题。让我们说一个这样的结构: 导入

回答 7 投票 0

使用 Jest-Enzyme 测试样式组件

如何测试我的样式组件是否具有特定的 CSS 属性值对? 假设我的组件如下: 常量 myColor = '#111'; const Button = styled.button` 背景颜色...

回答 2 投票 0

使用 jest 运行测试时的可选链接问题

我正在尝试使用 Jest 运行测试,目前我在 React 应用程序中使用 jsx 和 tsx (从 js 更改为 ts),但是当我运行测试时,除了 tsx 中带有 optio 的测试之外,所有 jsx 测试都成功...

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.