不足之处怎么写(Cypress你应该知道的一些不足之处)

不足之处怎么写

精华推荐:重磅发布 – 自动化框架基础指南pdf
        每当出一个新的工具,很多人都会跟风学习,甚至盲目的迷信,以至于忽略了其本质,任何工具都有不足之处,对于用户而言,不足是正常的,我们需要了解之,然后在实践中发挥其长处,规避不足,从而实现在企业实践中的最佳实践!!!

下面我们一起学习下Cypress的不足的地方,以便在进一步掌握Cypress,以便出现谜一样的自信。
Cypress是一个优秀的前端测试框架,但其并不保证百分百的承诺保证Cypress API都能精确1:1实现。

这就意味着,有可能出现某些API未能按其说明的进行了实现,当然笔者以为这种可能性及可能带来的风险应该是相对较小的,但使用者应该知道这个现实情况。

Cypress还有那些不足呢?
1. Cypress不能同时(并行地)运行多个命令
2. 使用者不能“意外的”忘记return或chain命令
3. 对于失败的命令,不能添加.catch错误处理

上面3点意味着,我们在应用Cypress进行实践时,要失去一些控制性、一些灵活性。

为什么会有上述3点的限制呢? 更大的根源可能是Cypress意图提供一个创建一致的、可靠的测试,期望这些测试在每次运行时的执行完全相同。

众所皆知的是:凡是软件开发,为了一致性、可靠性,一般都要失去一定的控制性、灵活性,而就这几天笔者学习Cypress的情况来看,这个取舍、权衡是值得的。

我们看下Cypress为什么不能同时(并行地)运行多个命令?
在Cypress中,为了保证确保每次都以相同的方式执行所有命令,很多Cypress命令都会以某种方式改变浏览器的状态。

例如request()命令自动获取并设置与远程服务器之间的cookie;
clearcookies()会清除所有浏览器cookies;
.click()使应用程序对单击事件作出响应。

而上面的命令都是不是幂等的,它们都是有副作用的,所以Cypress的命令必须以受控的、串行的方式运行,这也就说明了为什么不能同时(并行地)运行多个Cypress命令。
我们看下对于失败命令,为什么不能添加.catch错误处理?
在Cypress中,对于失败的命令,没有内置的错误恢复功能。一个命令和它的断言最终都通过,或如果一个失败,则所有剩余的命令都不运行,测试失败。

注:这个机制,让我想起了2012年时,我开源的的goose入门测试框架,也是遵循这个基本原则,一个失败则后续命令全部不运行!!!

对于刚学python进行自动化测试的人员,可以尝试看看goose入门测试框架,一个很简单的入门级框架,针对零基础的人员而写的。

这是第4篇Cypress的文章,字有点多了,已经1000余字了,后续再写了。码字不易,看完请随手点好看,随手分享出去,谢谢
点击下面文字加入苦叶子的微信圈子,免费滴
开源优测微信圈子
加我微信入群一起交流,注明:入群,加入微信群
上一篇文章:Cypress必须了解的异步和同步命令机制
精选文章
重磅发布 – 自动化框架基础指南pdf
在自动化测试中,重要的不是工具
苦叶子观察: 软件测试行业十一大趋势
在自动化测试工作之前,你应该知道的10条建议
欢迎在文章底部留言、讨论、交流
积微者,速成也    —  荀子《强国篇》  
期望苦叶子的每次分享,都能让你积微,速成!!!
开源优测,离不开你的广而告之、点赞、分享

不足之处怎么写相关文章

为您推荐

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部