问题标签 [enzyme]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 用酶反应测试组件道具的变化
我正在修改此处找到的示例:
https://github.com/airbnb/enzyme/blob/master/docs/api/ReactWrapper/setProps.md
您可以从测试结果中看到 className 属性在 prop 更改时正确更新。但是输入的值仍然错误地设置为“foo”。
关于如何断言在接收新道具的组件上的值已正确更改为输入上的值属性的任何想法?
javascript - 如果 React 组件需要 jQuery,Enzyme 会抛出错误
我正在尝试使用 EnzymedescribeWithDOM()
和mount()
. 但是当组件导入 jQuery 我得到这个错误:
错误:jQuery 需要一个带有文档的窗口
我知道 Enzyme 在后台使用 jsdom,我一直认为 jsdom 负责处理窗口和文档。但我似乎无法找到如何让这些一起工作。
测试代码如下所示:
在按钮 onClick 方法中调用了一个 jquery 函数:$('#inputSelector').focus()
如何让 Enzyme 和 jsdom 在测试中使用 jquery?
reactjs - Mocha 无法识别 JSX
我正在尝试使用 mocha 和酶来更新我的单元测试。我正在测试的代码在 ES6 中,使用 JSX 和 React。
在我的测试脚本中,我无法让 mocha 在 JSX 上不出错。
测试脚本:
});
gulpfile.js:
输出是:
我通过 browserify 运行源代码并将其放入测试目录中以证明它不是 mocha/enzyme 本身,从而成功运行了测试。我的问题只是试图让 gulp 魔法正确。
unit-testing - 如何测试`material-ui` AppBar的图标按钮上的`click`事件?
我正在测试以下React组件:
它由一个material-ui AppBar组件组成。使用Tape and Enzyme,我想click
在AppBar
's上模拟一个IconButton
:
我怎样才能正确地做到这一点?
Obs:我正在搜索,IconButton
因为根据React Dev Tools选项卡,这是呈现的图标按钮组件的名称。
reactjs - Mocha, Enzyme:使用酶对反应组件中的自定义函数进行单元测试
我正在使用 mocha、酶创建反应组件的单元测试。下面是一个示例组件。
Foo.js
这是测试文件。
Foo-Test.js
万事皆安。但是当我们使用酶时,我不明白如何在 Foo.js 中对 customFunction 进行单元测试
javascript - 酶导入参考错误
我正在尝试使用酶和玩笑为反应原生组件编写基本测试。我收到一个错误,暗示没有正确导入酶:
由于我是新手,我尝试过重新安装酶包并盲目地摆弄代码。不使用来自酶工作的浅层的基本测试,即expect(true).toBe(true)。我已经浏览了很多关于 JS 中的 referenceErrors 的问题,但似乎没有一个适用于这种情况(无论如何,在我没有经验的眼里)。
这是测试文件。非常简单,限制了错误的来源。
据我所知,我的 package.json 具有正确的依赖关系。我试过重新安装酶但没有成功。这里是:
在这种情况下可能/会抛出这个 ReferenceError 是什么?如果我尝试 mocha/chai 看看是否可行,我可能会很快发表评论,但我宁愿在这一点上继续开玩笑。
mocha.js - 摩卡酶全球范围界定问题
我正在使用摩卡咖啡和酶来测试我的反应成分。我对反应组件中的全局范围(localStorage)有疑问。
Foo.js
下面是 Foo 组件的单元测试代码。
当我运行测试时,我收到以下错误。
ReferenceError: localStorage 未定义
当像 localStorage 这样的全局对象存在组件渲染方法时,似乎会发生此错误。
有什么解决办法吗??
reactjs - componentDidMount 中使用的 setState 值未反映在 Enzyme 测试中
组件.js
组件.test.js
测试没有通过。wrapper.state('cats').length
总是0
。
我知道这setState
不能保证立即更新状态,但是如果我在组件中记录“猫”,我可以看到它正在更新。