问题标签 [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.
reactjs - 如果没有与组件关联的属性类型,如何在酶测试中测试按钮单击
我正在为 ReactJs 应用程序实现酶测试脚本。在这里,我有一个要测试的登录组件,它没有在 onClick 或 onSubmit 函数上使用任何 proptypes。我已经尝试了很多方法,但还没有找到解决方案。以下是提交部分
在这里,我尝试了各种方法来模拟按钮并始终显示命令 const button = wrapper.find('button'); 的禁用按钮;console.log(button.simulate('click').debug());
而expect(spy.callOnce).to.be.true不能用这里来检查它是否发生了。是否有任何解决方案可以使此按钮单击发生。
testing - 使用 Mocha 测试 React 中的高阶组件
我在 React 组件中使用HOC ,如下所示:
当使用 Mocha 测试组件时,我试图寻找应该包含在 Component 中的类名。像这样:
问题是 Mocha 不知道在包装器中查找 Component 并尝试在 HOC 中找到它。当然不会。
我收到的错误是:
如何告诉 Mocha 在 HOC 中查找类名的正确位置而不是 HOC 本身?
reactjs - 如何模拟反应路由器上下文
我有相当简单的反应组件(如果路由处于活动状态,则添加“活动”类的链接包装器):
我应该如何测试它?我唯一的尝试是:
它不起作用并返回TypeError: Cannot read property 'isActive' of undefined
。它肯定需要一些路由器模拟,但我不知道如何编写它。
unit-testing - Mocha - 如何在ajax调用后检查元素是否存在
ajax函数更新后如何检查select是否有一些选项。我的选择组件如下所示
这是我的尝试:
这有什么问题,我得到 var actual = 0。它应该是 3。所以我想我错过了 axios 的一些东西。我应该在我的规范中添加什么?
unit-testing - 监视测试模块中的方法
为了清楚起见,我会为您“绘制”一个情况。
模块 A(相同的 javascript 文件,在我的情况下,它在 ReactJS/Redux 应用程序中的 reducer)包含方法:First、Second
我测试方法 First (在其中调用了 Second - 我想检查它是否已被调用)。所以在伪代码中它看起来像这样:
我遇到的问题是,如果方法 Second 与 First 放在同一个模块(文件)中,它就不起作用(库不检测是否调用了 spy)。如果我将它移动到另一个文件/模块,它工作得很好。
它的设计或我做错了什么?
我用的是 sinon + chai + 酶栈。
reactjs - 酶测试:安装与渲染
除了render
使用“遍历库 Cheerio”..
我刚刚用mount
's替换了我所有的render
's,它的工作原理是一样的。
他们看起来和我很像。
我应该选择什么?这两者的API在某种程度上是不相同的吗?
什么时候使用render
over有什么特别的建议mount
?
material-ui - 如何将上下文传递给 Enzyme mount 方法以测试包含 Material UI 组件的组件?
我正在尝试使用mount
Enzyme 来测试我的组件,其中嵌套了几个 Material UI 组件。运行测试时出现此错误:
TypeError: Cannot read property 'prepareStyles' of undefined
经过一番挖掘,我确实发现需要在 context 中传递一个主题。我在测试中这样做,但仍然出现此错误。
我的测试:
我的搜索栏组件是一个无状态组件,所以我没有在任何上下文中拉扯。但即使我在,我仍然会遇到同样的错误。
我究竟做错了什么?