当我测试用户事件时,我使用react-testing-library的fireevent函数。
・src/example.js
import counter from "./components/counter";const example = () => { const origincount = 0; return ;};export default example;
・src/commponets/counter.jsx
import { usestate } from "react";const counter = (props) => { const { origincount } = props; const [count, setcount] = usestate(origincount); const countup = () => { setcount(count + 1); }; return ( a test of counter
current count:{count} );};export default counter;
・src/commponets/counter.test.jsx
import { render, screen, fireEvent } from "@testing-library/react";import Counter from "./Counter";test("Whether the current count counts up or not, in case the countUp button is clicked ", () => { const { debug } = render();//test the initial state. const spanElBeforUpdate = screen.getByText("Current count:0"); expect(spanElBeforUpdate).toBeInTheDocument();//test the user event. In this case, a click event. const btn = screen.getByRole("button", { name: "Countup" }); fireEvent.click(btn);//test the state which is after clicked button. const spanEl = screen.getByText("Current count:1"); expect(spanEl).toBeInTheDocument();});
・成功
・失败
以上就是React 基础知识~单元测试/用户事件的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1493473.html
微信扫一扫
支付宝扫一扫