在上一篇Cypress基础指南大体介绍了Cypress的一些基础知识,让大家对Cypress有了一定的了解和印象,本文将介绍Cypress的一些核心概念,让大家进一步了解和加强。
Cypress如何查询元素的?
如果你对JQuery有一定的了解,在使用jquery查询元素是一般使用如下类似的代码:
> $(".element-selector")
在Cypress里则同样的这样查询元素,代码如下:
> cy.get(".element-selector")
是不是很像,事实上,Cypress捆绑了JQuery,并提供了JQuery的许多DOM遍历方法,这样我们就可以使用熟悉的API处理复杂的HTML结构了。
重磅提示: Cypress利用了JQuery强大的选择器引擎来帮助我们进行web自动化测试,所以掌握JQuery选择器的能力,也意味着你能更好的处理复杂的HTML结构。
Cypress与JQuery的不同
当JQuery无法从指定的选择器中查找到DOM元素时,会发生什么?
一般会返回一个空的JQuery集合,这是一个实际的对象,但不包含我们指定的元素,因此我们需要修改选择器才可能找到我们要的DOM元素
当Cypress无法从指定的选择器中查找到DOM元素时,会发生什么?
对于Cypress而言,可能产生以下两种可能:
- 一直找,直到找到该DOM元素
- 超过默认或设置的超时时间了
对于下selenium webdriver,当未找到指定的元素时,会抛出各种异常提示等,需要我们手动写代码来处理这些异常,而Cypress则不需要手动写代码处理各种可能的异常情况,这个方面Cypress与selenium webdriver相比就显得简洁多了!!!
有点爱了~~,能让我少写好多好多的代码
在这方面Cypress封装的DOM查询机制,也许更适合web自动化测试,也更适合软件测试从业者,可以将精力聚焦在提升自动化测试与业务测试协作上来。