我们在标记中使用“数据测试”属性来查询测试中的元素。例如:
<div data-test='myDiv'></div>
我们不希望此属性出现在生产版本中。到目前为止,我找到了一种解决方法来创建一个指令,该指令在运行时会删除生产版本的属性。可以肯定的是,这将花费一些CPU并令人怀疑。寻找一种在构建时删除属性的方法。任何想法都欢迎。
答案 0 :(得分:2)
查看这篇文章,了解如何在编译(使用 webpack 加载程序)或运行时(使用指令)期间删除 data-cy
属性。您可以对任何 data-*
属性执行完全相同的步骤(并忽略 Cypress 的内容)。只需将 data-cy
表达式替换为 data-test
即可。
https://medium.com/agilix/angular-and-cypress-data-cy-attributes-d698c01df062
这至少适用于 Angular6+。