问题标签 [reactjs-testutils]

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.

0 投票
1 回答
102 浏览

reactjs - 运行 Karma 测试时出现错误“h1.findDOMNode 不是函数”

我正在尝试编写一个简单的测试。我将 Karma 作为测试运行程序,将 Mocha 作为框架。

每次我运行测试时,它都会失败并出现错误...... TypeError: h1.findDOMNode is not a function

这是测试脚本...

这是在发现getDOMNode已弃用之后,现在是findDOMNode. 我一直在寻找已被弃用的方法。

react + react-addons-test-utils 版本。15.0.1 | 摩卡版 2.4.5

0 投票
1 回答
2615 浏览

unit-testing - 在 React TestUtils 中模拟文件输入

我有一个具有以下渲染功能的组件:-

状态由一个容器管理,该容器使用 jquery AJAX 调用上传文件服务器端:

这在服务器运行时完美无缺。但是,我想在不需要调用服务器的情况下进行测试。这是我到目前为止编写的 Mocha 测试:

收到此错误:-

0 投票
1 回答
105 浏览

reactjs - 为没有参数的函数编写 React TestUtils 测试用例

所以我有一个功能可以从特定页面中删除所有标签。在这个函数中声明了一个变量来完成这项工作。我需要将虚拟值传递给该变量,以便该值将传递并执行函数。

如何使用 ReactJS TestUtils 为以下内容编写测试用例。

}

到目前为止我有这个

此外,如果有人可以分享一些文档/文章来测试不同的前端场景,那就太好了。

0 投票
1 回答
409 浏览

reactjs - ReactTestUtils findRenderedComponentWithType抛出错误没有被chai检测到?

我使用 findRenderedComponentWithType 来确保存在错误,并且我使用 chai 的 assert.throws,但它不起作用。


首先:

TestUtils.findRenderedComponentWithType 文档:

expects there to be one result and returns that one result, or throws exception if there is any other number of matches besides one.


当我使用该功能时,我得到一个错误(如预期和正确)。但是我似乎无法用 chai 正确断言它:我试过了assert.throws(TestUtils.findRenderedComponentWithType(element, component), /(Error)/)。但它说测试失败,即使我收到错误:

0 投票
1 回答
4847 浏览

javascript - 反应 testUtils 模拟单击​​单选按钮不触发 onchange

用于使用 JSDom、mocha、chai 和 ReactTestUtils 测试 Im。

我的一个组件有三个单选按钮,当检测到更改时 ( onChange) 将运行一个函数。

一切都在手动测试中有效,但是当我使用simulate.Click它时似乎无法触发该功能。

然后一些断言告诉我组件内部的函数从未运行过,因此它从未检测到更改(单击单选按钮)。

关于为什么的任何线索?

0 投票
1 回答
2932 浏览

unit-testing - TestUtils.Simulate.change 不更新输入值

我制作了一个非常简单的组件来测试 TestUtils.Simulate reactJS 方法。但是我不知道为什么这个方法不会更新我的组件的值。我想我以错误的方式编写了我的代码。

这是我的小组件:

这是测试页面:

行 TestUtils.Simulate.change(input, {target: {value: 'giraffe'}}); 什么都不做

0 投票
2 回答
14613 浏览

reactjs - 使用 Jest 更改元素大小

我的组件中有以下代码

我在组件中使用d3js和渲染图。但是当我运行测试时,有任何svg标签。我假设它发生是因为所有rect 的字段都等于 0。

这是浏览器中console.log(rect)的输出:

ClientRect {上:89,右:808,下:689,左:8,宽度:800…}

当我运行测试时:

{ 底部:0,高度:0,左侧:0,右侧:0,顶部:0,宽度:0 }

那么有没有办法设置元素的大小?

0 投票
0 回答
291 浏览

unit-testing - 使用模拟的 http 调用进行 ReactJS 组件测试

我从 React 文档中获取了一个 ReactJS 组件(为给定用户呈现最新的 gist URL),并且想知道对这样一个组件进行单元测试的最佳方法是什么:

目标是

  • 单独测试(使用模拟的 http 调用)
  • 使用我们现有的测试设置 (mocha)
  • 保持简单
  • 验证最终,当组件中的 http 调用成功时,状态更改触发了重新渲染,并且锚元素在其中呈现了正确的 url。

这是我要测试的组件:

这是我第一次尝试测试它:

这个测试显然失败了,因为组件最初是在执行模拟回调之前渲染的,没有正确渲染锚。

在模拟的 http 调用返回之前测试失败,并且组件没有机会重新渲染。

据我了解,Mocha 提供了进行异步测试的方法(使用该done()函数),但我在测试中找不到一个钩子来放置它。

我需要什么工具/框架来完成它?

0 投票
2 回答
3606 浏览

javascript - 在 Reactjs 中测试窗口 keydown 事件

我正在编写的组件需要根据是否ctrl按下来改变其行为。

我使用了一个window.onkeydown事件,但Simulate来自React Test Utils的事件不允许我针对window. 我也尝试过window.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 17 }));,但 mocha/node 无法识别KeyboardEvent.

有没有办法window.onkeydown使用React Test Utils进行测试?如果没有,有没有更好的方法在 mocha for node 中做到这一点?

这是一些说明问题的代码:

0 投票
1 回答
1312 浏览

reactjs - 反应测试:更改输入字段的值

我无法设置输入字段的值。我究竟做错了什么?如果需要更多信息,请告诉我。谢谢你。