同为 Web UI 的测试框架,本文将 Selenium 、TestCafe 和 Puppeteer 与 Cypress 作了一番对比。
目录
三篇相关文章
对比一览
从多个维度指标做对比见下表:
指标
Selenium
Puppeteer
TestCafe
Cypress
语言
多种语言:Java、Python、Ruby
JavaScript
JavaScript
JavaScript
实现原理
Json wire 协议
chrome CDP 协议
JS注入页面
JS注入页面
等待方式
阻塞等待
异步
异步
异步
支持的浏览器
IE、Firefox、Chrome等
仅Chrome
IE、Firefox、Chrome等
Chrome、Edge、Electron、Firefox
测试断言库
无
无
无
内含 Mocha/Chai
用途
测试
广泛
测试
测试
Selenium 已明显过时,TestCafe 和 Puppeteer 更多是一款工具,具体的用法则跟随使用者的习惯。Cypress 则提供了一套相对完整的系统,并提供了最佳实践。
下面我们通过一些场景的实现,读者可自行对比异同。</