Jest.js Jets测试任何(HTML)-这是可能的吗?

qc6wkl3g  于 2023-06-20  发布在  Jest
关注(0)|答案(1)|浏览(136)

我通过查看调用组件时使用的props来检查组件是否按预期返回。
自从更新了一些代码后,我现在有了一个新的键children,它的值是HTML。
如何在不指定显式HTML的情况下将HTML添加到预期的props中?我不关心HTML的内容是什么(这是为了以后的测试),但我想检查它是否被正确调用。

const defaultProps = {
    title: "Foo",
    contentLoaded: true,
    type: center,
    passedFunc: expect.any(Function),
    id: "id-1234",
    children: expect.any(HTML) // what goes here?
  };

  it("should render the component", () => {
    render(<MyComponent />);
    expect(ChildComponent).toHaveBeenCalledWith(
      expect.objectContaining({ type: center, ...defaultProps }),
      {}
    );
  });

children默认属性中有什么可以让我的测试通过,其中children是HTML?

dxxyhpgq

dxxyhpgq1#

让我举个例子,如果这可以帮助你

const defaultProps = {
  title: "XXX",
  contentLoaded: true,
  type: "center",
  passedFunc: expect.any(Function),
  id: "id-1234",
  children: expect.anything()
};

it("render component", () => {
  render(<MyComponent />);
  expect(ChildComponent).toHaveBeenCalledWith(
    expect.objectContaining({ type: "center", ...defaultProps }),
    {}
  );
});

希望这对你有帮助。

相关问题