如何通过玩笑和酵素对孩子的功能进行单元测试?

时间:2019-11-22 18:07:48

标签: javascript reactjs jestjs enzyme

我有一个看起来像这样的组件:

const TestComponent = ({ mobile }) => (
  <>
    <div>
      Your estimate
      {!mobile && (
        <InfoButton>
          {target => (
            <Tooltip
              target={target}
            >
              My tooltip text
            </Tooltip>
          )}
        </InfoButton>
      )}
    </div>
  </>
);

我正在尝试使用笑话和酶为此添加一个单元测试,并且在尝试查找正在渲染的Tooltip时遇到问题。我相信这是因为它是由一个函数呈现的,所以当我开玩笑调试时,这就是我所看到的

  <InfoButton className="infoButton">
    [function]
  </InfoButton>

我无法.find().dive()进一步去寻找Tooltip组件。在进行开玩笑的测试时,如何获得该功能以实际呈现内容?

更新:添加我的测试

it("should render info button with tooltip", () => {
  const wrapper = renderSubject(); // My render fn which randers the parent compoennt
  const testComponent = wrapper
    .find("TestComponent")
    .first()
    .dive();
  expect(testComponent.find("InfoButton").exists()).toBe(true);
  console.log(testComponent.find("InfoButton").debug());
});

0 个答案:

没有答案