您可以在不安装反应组件的情况下识别元素。如果您正在与源代码隔离测试您的 React 应用程序或编写功能性 UI 测试用例,您可以考虑使用名为cypress-react-selector的赛普拉斯插件。即使在缩小之后,它也可以帮助您按组件、道具和状态识别 Web 元素。在这种情况下,您需要使用 React Dev Tool 来识别组件名称。
这是一个例子:
假设您的反应应用程序:
const MyComponent = ({ someBooleanProp }) => (
<div>My Component {someBooleanProp ? 'show this' : ''} </div>
)
const App = () => (
<div id='root'>
<MyComponent />
<MyComponent someBooleanProp={true} />
</div>
)
ReactDOM.render(<App />, document.getElementById('root'))
然后你可以简单地识别反应元素,如:
cy.react('MyComponent', { someBooleanProp: true })
因此,您可以尝试以下操作:
cy.react('Input',{defaultValue:"steve"}).should('exist');
在此处查找更多示例测试
希望它会有所帮助!