我不想使用 Xpath 来映射 Label 元素

I don't want to use Xpath to map the Label element

我不想使用 xpath 来映射这些元素,因为我们可以看到 class 对每个人都是一样的。请问怎么办?

<label class="sc-fzowVh juqfMo">CNPJ:*</label>
<label class="sc-fzowVh juqfMo">CPF: (do usuário)*</label>

xpath:

//*[@id="boxCadastro"]/div/div[2]/div[1]/div/label
//*[@id="boxCadastro"]/div/div[2]/div[2]/div/label

请看图:enter image description here

为了能够使用范围界定,没有看到每个标签元素周围的 HTML,唯一的选择是在标签内容上进行文本匹配

element :label1, :css, 'label', text: 'CNPJ:*'
element :label2, :css, 'label', text: 'CPF: (do usuário)*'

或使用 :label 选择器类型

element :label1, :label, 'CNPJ:*'
element :label2, :label, 'CPF: (do usuário)*'

虽然 label 元素没有 for 属性通常是一种不好的做法,并且会对页面可访问性产生负面影响,因此您可能想与您的开发人员讨论如何改进他们的 HTML