棱角分明。从 html 标记中删除属性的构建步骤

IAf*_*sov 12 html testing webpack angular-cli angular

我们在标记中使用“data-test”属性来查询测试中的元素。例如:

<div data-test='myDiv'></div>
Run Code Online (Sandbox Code Playgroud)

我们不希望此属性出现在生产版本中。到目前为止,我找到了一种解决方法来创建一个指令,该指令在运行时删除生产构建的属性。它肯定会花费一些 CPU 并且似乎值得怀疑。寻找一种在构建时删除属性的方法。欢迎任何想法。

hal*_*son 4

查看这篇文章,了解如何data-cy在编译期间(使用 webpack 加载器)或运行时(使用指令)删除属性。您可以对任何属性执行完全相同的步骤data-*(并忽略 Cypress 的内容)。只需将data-cy表达式替换为data-test即可。

https://medium.com/agilix/angular-and-cypress-data-cy-attributes-d698c01df062

这至少适用于 Angular6+。