【发布时间】:2021-01-08 17:07:44
【问题描述】:
我一直在努力尝试对材质 UI 组件进行集成测试。我可以定位滑块,但未能成功移动滑块并找到新值。您对如何与该组件进行交互并测试该交互有任何指导吗?
import React from "react";
import { fireEvent, render, screen } from "@testing-library/react";
import userEvent from "@testing-library/user-event";
import "@testing-library/jest-dom";
import { MemoryRouter } from "react-router-dom";
import { Slider } from "@material-ui/core";
import SearchForm from "./SearchForm";
describe("SearchForm interaction", () => {
it("should change value if slider is moved", () => {
const minValue = 1;
const maxValue = 8;
const currentValue = 4;
render(
<Slider
className="slider"
min={minValue}
max={maxValue}
value={currentValue}
onChange={jest.fn()}
valueLabelDisplay="auto"
aria-labelledby="range-slider"
data-testid="numPlayer-slider"
/>
);
const slider = screen.getByTestId("numPlayer-slider");
//userEvent.click(slider, )
});
});
【问题讨论】:
-
我也一直在尝试解决这个问题。我想现在,我会坚持使用 fireEvent.change(slider, { target: { value: '2' } })
标签: javascript reactjs unit-testing jestjs material-ui