44得票3回答
React测试库如何使用waitFor

我正在跟随一个React测试的教程。该教程有一个简单的组件,如下,演示如何测试异步操作:import React from 'react' const TestAsync = () => { const [counter, setCounter] = React.useState(...

44得票3回答
使用 `react-testing-library` 和 `cypress` 有什么区别?

那么,react-testing-library用于单元/集成测试,而cypress用于端到端测试。然而,两者似乎做的事情相同: react-testing-library 促进模拟 像用户一样进行测试 从顶层组件开始(不是硬性要求,但如果不这样做,则在子组件测试中会出现大量重复的测试案...

38得票8回答
如何在react-testing-library中触发单选按钮的更改事件?

我正在转向使用react-testing-library,但不知道如何触发此事件并获取更改的结果。我尝试使用fireEvent函数触发更改,然后尝试了rerender函数,但似乎无法使其工作。App.jsimport React, { useState } from "react"; impo...

37得票5回答
React测试库 - 找不到带有data-testid属性的元素

我正在按照react-testing-library的文档查找是否渲染具有data-testid属性的元素。 即使元素存在,react-testing-library也无法找到该元素。 测试test('Renders step based on the active step', () =&g...

37得票3回答
使用react-testing-library测试useEffect中的API调用

我想测试api调用和返回的数据,应该显示在我的功能组件内。我创建了一个列表组件来执行api调用。我希望返回的数据能够显示在组件中,并使用useState hook实现此目的。组件看起来像这样:const List: FC<{}> = () => { const [da...

36得票4回答
使用testing-library和jest测试React组件抛出的错误

根据Kent C Dodds在博客文章中介绍的提供程序模式,我有一个上下文提供程序组件和一个用于使用该上下文的钩子。这个钩子可以防止在提供程序之外使用它。export function useUser() { const { user } = useContext(UserContext)...

36得票3回答
React测试库:测试属性/属性值

我正在使用TypeScript编写一个React应用程序。我使用Material-UI来创建组件,并使用React Testing Library来进行单元测试。我正在为Material-UI的Grid组件编写一个包装器,以便我始终拥有一个项。 import Grid from "@mater...

35得票8回答
在react-testing-library中,按下回车键提交表单无法生效。

描述: 我正在尝试测试当用户按下"Enter"键时,表单是否提交。我已经通过测试了当按下 提交 按钮时的情况,但我还想确保可以使用键盘提交表单(方便性和无障碍性)。 代码:test("should submit when pressing enter", () => { cons...

34得票2回答
在 React Testing Library 中测试点击事件

这是一个简单的子组件,当点击按钮时,会显示一个 答案(answer) :const Question = ({ question, answer }) => { const [showAnswer, setShowAnswer] = useState(false) ret...

34得票4回答
错误:未实现:HTMLFormElement.prototype.submit

这是我的测试案例的样子:const renderCard = ({ onSubmit = jest.fn(), }: RenderCardParams = {}) => { return render( <Card title={title} onSubmi...