前言
Cypress含有多种定位方式我们无需担心因为定位导致测试失败,Cypress有独一无二的定位策略能使你摆脱元素定位的噩梦。
Cypress专有选择器
- data-cy
- data-test
- data-testid
举例:
1 | <button id='main' class = 'btn' data-cy = 'submit'>submit<button><button id='main' class = 'btn' data-test= 'submit'>submit<button><button id='main' class = 'btn' data-testid= 'submit'>submit<button> |
获取元素方法:
1 | cy.get('[data-cy=submit]').click() |
举例:
1 | <tbody> |
- #d选择器
#id选择器通过html元素id属性来获取DMO
获取用户名input元素方法:
1 | cy.get('#account').click() |
- class类选择器
类选择器通过html元素class属性来获取DMO
获取用户名input元素方法:
1 | cy.get('.form-control').click() |
- attributes属性选择器
类选择器通过html元素class属性来获取DMO
获取用户名input元素方法:
1 | cy.get('[input[id = "account"]]').click() |
- :nth-child(n)选择器
:nth-child(n)选择器匹配属于其父元素的第n个子元素,不论元素的类型。
获取用户名DOM元素方法:
1 | cy.get(tbody > tr:nth-child(1) > th') |
- Cypress.$定位器
Cypress可以使用jQuery选择器定位
1 | Cypress.$('#account') 等价于 cy.get('#account') |
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。