【问题标题】:Cypress get specified element with exact text赛普拉斯获取具有精确文本的指定元素
【发布时间】:2022-10-21 22:20:42
【问题描述】:

我想用一些文本获取指定的元素/组件类型。我遇到的第一个问题是使用 .contains('some text') 和 get(component-name:contains("some text") 由于部分匹配,它匹配更多的元素。我想让它工作非贪婪和匹配组件只有在完全匹配的情况下,开头和结尾都没有。我尝试使用正则表达式,但它不适用于这个 .get() css 选择器语法。

<component-name>
  ...
  <span>some text</span>
 </component-name>
 <component-name>
  ...
  <span>some text123</span>
 </component-name>
可视化:在这两个组件中,我想获得组件 1,因为它包含完全匹配。

【问题讨论】:

    标签: javascript jquery automated-tests cypress


    【解决方案1】:

    我不确定您使用的是什么正则表达式,但我能够使用 ^$ 来获得完全匹配。

    <div>some text1234</div>
    <div>some text</div>
    <div>some text</div>
    <div>part of some text</div>
    
    cy.contains(/^somestext$/).should("have.text", "some text");
    

    这是一个工作示例test

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-10
      • 1970-01-01
      相关资源
      最近更新 更多