UI层自动化测试比较痛的两个点,第一是不易调试,第二是需要花费大量精力提升脚本稳定性,而影响稳定性的关键因素之一是没有添加合适的等待处理。Cypress作为新一代UI层自动化测试框架之一,最大的亮点是框架内置了自动等待以及提供了极佳的调试体验。接下来我们先尝试体验下cypress的自动内置等待特性,再尝试如何通过Test Runner对代码进行调试。
- 体验Cypress框架内置的自动等待
- 使用Test Runner进行调试
接下来,我们就开始第一个task。
体验Cypress框架内置的自动等待
Clone代码后,npm install安装所需依赖,安装成功后执行命令“npm run autoWaitDemo”运行案例或者打开Test Runner运行用例。如下图所示,web页面中输入做加法运算的数字后,点击go按钮,页面会等1-2秒才会显示运算结果。
再看利用cypress编写的自动化脚本没有任何地方添加等待语句,因为cypress框架内置了自动等待机制,只有等待到达超时时间后仍然未找到页面元素才会失败。另外,因为cypress框架提供了全局cy对象,所以直接支持Page Object设计模式。Page Object设计模式指按页管理对该页面元素操作的所有脚本,需要注意一点这里的页对象是指聚合度很高的操作集合。大部分场景下页指web应用的某