问题标签 [react-native-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 投票
3 回答
1676 浏览

reactjs - 反应原生 jest.preset.js 文件丢失错误

我使用 @testing-library/react-native 来测试我的 RN 应用程序。当我运行纱线测试时,出现以下错误。

我为我的应用程序使用打字稿。

我的测试脚本是这样的。

jest.config.json 文件是这样的。

为什么我会收到此错误?

0 投票
3 回答
1751 浏览

reactjs - 编写单元测试以检查应用程序是否在 react-native 中处于脱机状态

如果应用程序处于脱机状态,我有以下组件会在应用程序上显示文本。

我想为此编写一个单元测试以检查它是否正常工作。我怎样才能做到这一点?我是单元测试的新手。我不明白如何嘲笑这个。

我使用 typescript 和 testing-library/react-native。

更新: 为什么第一次测试失败了?它不应该为空。但它失败了。错误是,

0 投票
2 回答
2902 浏览

react-native - React Native 测试 - 无需等待即可行动

下面的测试通过了,但我两次收到以下警告,我不知道为什么。有人可以帮我弄清楚吗?

  • 据我所知,没有必要fireEventact-链接包装
  • findBy*也被自动包装act-链接
  • GitHub中的相关问题仍未解决

依赖项:

  • 反应:16.13.1
  • 世博会:39.0.4
  • 开玩笑:26.6.3
  • ts-开玩笑:26.4.4
  • 开玩笑博览会:39.0.0
  • @testing-library/jest-native:3.4.3
  • @测试库/反应:11.2.2
  • @testing-library/react-native:7.1.0
  • 反应测试渲染器:16.13.1
  • 打字稿:4.1.2
0 投票
0 回答
157 浏览

react-native - @testing-library/react-native 我应该如何测试 BackHandler Alert 并处理 ok 和 cancel 按钮?

无法使用 @testing-library/react-native 测试以下代码

0 投票
1 回答
1226 浏览

typescript - 当 TypeScript 阻止我时,如何将 testId 属性添加到用于测试库的 React Native 组件?

我正在使用 TypeScript 编写一个 React Native 组件并使用React Native Testing Library测试它们。

我想在 React Native 组件上放置一个 testId 属性,如下所示:

然后在这样的测试中引用它:

但是 TypeScript 不允许我testId在组件上添加属性,因为 TypeScript 会询问 React Native 的有效属性,而 React Native 对 ; 一无所知testId。testId 是@testing-library/react-native 的一部分。

如何让 TypeScript 识别testId来自 @testing-library/react-native 的添加属性。

0 投票
1 回答
649 浏览

react-native - 使用 react-native-testing-library 找不到命名元素

我正在尝试通过其占位符文本获取元素,但 react-native-testing-library 不断向我抛出相同的错误:

这是我要测试的代码:

我还尝试通过 getByTestId 和 queryByTestId 获取我尝试测试的元素,并且两者都有类似的错误。

如果我尝试使用 waitFor() => 进行测试,我不会收到任何错误消息,即使我尝试更改预期输出,如 expect(getByTestId('test1').toEqual('test2');。

它运行顺利,但它不应该。

我不确定我做错了什么。

0 投票
1 回答
1833 浏览

react-native - 如何使用 react-native-testing-library 提交表单或在输入上按 enter 键

我有以下问题:我需要测试是否在我的测试中调用了一个函数,但要正确测试它,我需要按 enter 或提交表单,它似乎没有按预期工作。我已经尝试过以下方法:

触发我的组件 prop 的唯一方法onSubmitEditing是按 Enter 键。

这是我要测试的代码:

这是该_searchPressingEnter函数的代码:

按下 Enter 键后,_searchPressingEnter应调用该函数,从而触发onSubmitEditing道具。

0 投票
1 回答
680 浏览

react-native - TouchableOpacity 不显示 disabled 和 activeOpacity 道具

我正在尝试测试这个简单的按钮:

我使用这个测试文件,在这里我只是用一些道具渲染我的按钮:

问题是我返回了这棵树,它没有disabledactiveOpacity在其中

因此,我在上面的测试文件中的断言失败了。那我该如何测试道具TouchableOpacity呢?

在此先感谢您的时间!

0 投票
0 回答
156 浏览

react-native - 当可编辑为假时,onChangeText 被称为事件

这个问题fireEvent.changeText事件不应该在is时调用onChangeText函数,但是当我运行它时:editablefalse

我的测试失败了,因为handleChangeText被调用了。

我用:

  1. "@testing-library/react-native": "7.1.0"
  2. "react-native": "https://github.com/expo/react-native/archive/sdk-38.0.0.tar.gz"
0 投票
0 回答
250 浏览

react-native - 元素的测试焦点

如何检查该TextInput组件是否聚焦?我知道如何在网上做到这一点:

但是如何在 React Native 中做同样的事情呢?