使用react测试库检查组件的状态

IT技术 reactjs react-testing-library
2021-05-26 11:12:49

我使用 react 测试库触发了组件的更改,我想检查组件状态的相应更改。是否可以检查组件的状态

1个回答

可能是 No-Go 因为这直接违反了 React-Testing-Library 的原则

介绍

问题

你想为你的 React 组件编写可维护的测试。作为此目标的一部分,您希望您的测试避免包含组件的实现细节,而是专注于让您的测试为您提供预期的信心。作为其中的一部分,您希望您的测试库从长远来看是可维护的,这样您的组件的重构(更改实现但不是功能)不会破坏您的测试并减慢您和您的团队的速度。

这个解决方案

您的测试与您的软件的使用方式越相似,它们就越能给您信心。

基本上,它并不关心组件的内部实现细节,比如state,而是关心它的 API,即 props 以及用户如何与其交互。这更像是黑盒测试。