小编sem*_*nex的帖子

如何在 React 组件测试中使用 data-testid 属性?

我正在对一个简单的反应组件进行组件测试,我想渲染该组件,然后对其进行一些测试。

问题是似乎cy.get()没有根据属性找到组件data-testid

我用简单的方法测试了一下divdiv可以发现很好。

我还注意到在检查DOMcypress runner 时,组件没有被渲染,但它的内容被渲染。基本上没有<MockComponent>

  it.only("renders and finds Component", () => {
    cy.mount(
      <ApolloProvider client={client}>
        <MockComponent data-testid='mock-component' {...someData} />
        <div data-testid='my-div'></div>
      </ApolloProvider>
    );

    cy.get("[data-testid='my-div']").should('exist'); //this works
    cy.get("[data-testid='mock-component']").should('exist'); //this doesn't

  });
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得<MockComponent>cypress ,以便我可以对其进行测试?

reactjs cypress react-typescript cypress-component-test-runner

7
推荐指数
1
解决办法
1万
查看次数