React 测试库 id 而不是 data-testid?

React testing library id instead of data-testid?

如果我使用 HTML id 属性而不是像 data-testid 这样的数据属性,会有什么不同吗?

data-testid在测试中的使用参考:

https://testing-library.com/docs/queries/bytestid/

从表面上看,我没有看到任何技术差异。

但是在可读性方面,data-testid可能会注意到其他开发人员这是专门用于测试用例的,而id可能是在样式方面。

此外,idclass 选择器可以在实现发生变化时更频繁地更改。

参考:

Making your UI tests resilient to change