问题标签 [testing-library]

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 投票
0 回答
53 浏览

react-testing-library - 如何检查元素是否隐藏在反应测试库自定义查询中?

我想实现支持过滤隐藏元素的自定义查询,但是在testing-library自定义查询中,如何确定元素是否隐藏?

0 投票
1 回答
4337 浏览

reactjs - React Jest 测试:TestingLibraryElementError: Unable to find an element

我无法在我的笑话测试中获得测试 ID。我是反应测试的新手。我想测试这个组件并取回例如之前给出的 h3 文本。

告诉我:
“TestingLibraryElementError: Unable to find an element by: [data-testid="testH3"]”

你能帮助我吗?

更新:

最终代码现在工作得很好。感谢你们

0 投票
2 回答
2168 浏览

cypress - 如何在赛普拉斯测试库的“findByTestId”函数中覆盖“data-testid”

我现有的大部分代码库只在少数地方使用“id”,“data-testId”属性存在。试过这段代码

但是,它仍然无法正常工作。

有没有办法在任何测试库函数中使用“id”值。

我的 HTML 代码类似于:

我想用这个代码点击那个元素:

0 投票
1 回答
1630 浏览

javascript - Jest TypeError:无法读取 null 的属性

我有一个外部应用程序的设置并在 const 中启动它,然后将它放在const allowAppInstance appConfig的配置中

我在这里导出

在组件中,我得到了这个设置并将它放在一个 const

该应用程序有效,但是当我运行测试时,开玩笑并没有让它通过,它会导致此错误:

有什么方法可以模拟allowAppInstance以通过测试吗?我真的不知道该怎么做,我做错了什么

0 投票
0 回答
4747 浏览

testing - Next.js:Jest 遇到了意外的令牌。Jest 无法解析文件。由于 CSS 文件中的 className 之前的点( .{color: red} )而崩溃

Jest 遇到了意外的令牌

C:\NextSpeetar\speetar-react-frontend\node_modules\cropperjs\dist\cropper.css:11 .cropper-container { ^

0 投票
1 回答
540 浏览

reactjs - 清理不会防止查找具有相同角色的多个元素时出错

我正在尝试使用 React 测试库运行测试它单击组件内的按钮。我映射了组件,因此按钮存在多次。即使我设置了清理,我仍然收到以下错误:

** TestingLibraryElementError:发现多个具有“按钮”角色的元素**

这是我的代码:

0 投票
0 回答
515 浏览

reactjs - 如何在 React 测试库/Jest 中测试按钮是否有条件启用

我需要测试在填写文本输入后是否有条件地启用按钮。

现在只需检查它们是否被禁用即可使用以下内容:

但我想检查它们是否在填写输入值后启用。

这是我目前拥有的。

我想说这将检查按钮是否被禁用,模拟填写必要的输入,然后检查按钮是否从禁用变为启用。但是测试失败了。

0 投票
0 回答
73 浏览

reactjs - 使用@testing-library/react 在单spa React 应用程序中进行单元测试

我正在开发一个使用 React 的单水疗应用程序。由于 React 是一个常见的依赖项,我只在 systemjs-importmap 的根应用程序中添加了它

现在,当我为其他应用程序中的组件编写单独的测试用例时,我收到一个错误,即未定义“反应”

● 测试套件无法运行从“测试/组件/common/AccountInfo.test.js”中找不到模块“反应”

如果不向每个单独的应用程序的 package.json 添加“react”依赖项,我是否需要做任何配置才能使 React 包也可以在我的测试文件中使用?

0 投票
1 回答
1917 浏览

reactjs - @testing-library/React:在组件外部单击不起作用

我正在使用反应测试库来测试我用 FluentUI 构建的组件。

这是链接: https ://codesandbox.io/s/keen-borg-2tqmj?file=/src/App.spec.js

该代码基本上是Dialog来自 FluentUI 文档站点的组件示例代码的粘贴片段。我正在测试的行为是:

  1. 用户打开对话框
  2. 用户在对话框外点击
  3. onDimiss组件的 prop 应该被触发。

当我手动使用它时它可以工作,但是似乎我无法使用测试库模拟组件外部的点击。

我尝试使用这篇文章userEvent.click(document.body)中提到的但没有运气

有谁知道如何使测试工作?

0 投票
0 回答
80 浏览

preact - testing-library/preact 和 react-redux 不工作

尝试测试使用 react-redux 钩子(useDispatch 和 useSelector)的 Preact 组件,并得到以下错误:

无效的挂钩调用。钩子只能在函数组件的主体内部调用。这可能是由于以下原因之一: 1. 你可能有不匹配的 React 版本和渲染器(例如 React DOM) 2. 你可能违反了 Hooks 规则 3. 你可能有多个 React 副本同一个应用

这是调用堆栈:

我在想可能缺少一些额外的配置,但在网上找不到任何东西。