【自动化】ruby自动化经验小谈

   选定自动化,迈出了第一步~~上一周简单做了部分关键字的封装工作,现在简单谈谈自己的学习总结。
   项目背景:实现页面自动化,指定页面,指定查询条件页面返回查询的响应时间。
   项目分析:页面自动化选用watir,自动化框架采用关键字驱动+数据驱动,关键字主要实现一个个用户操作,数据驱动是因为考虑到不同的页面,不同的查询条件用数据驱动便于管理。

经验总结:
1.watir中元素的定位尽可能不用value,为了实现不同的页面共用一套逻辑,就不要采用value元素定位,可以采用其他元素定位,如id
2.找到不同页面的共同点:其实第1点也提到了,找出不同页面的共同点能减少函数的封装
3.异常逻辑要到位:这个是显而易见的,为了让自动化更加健壮及定位问题的便利,我们需要在容易出问题的地方加上rescue及raise逻辑
4.rescue的逻辑中尽量用ensure操作:走到异常逻辑时,有时候导致资源回收的操作未做,如文件关闭,所以用ensure保证异常情况下也可走到资源回收操作
5.可能出现变化的逻辑尽量用函数封装:如设计一个页面时在a列,但是有可能会出现b列,这时候最好用函数封装页面的列逻辑,避免后期excel改动带来较大代码层面的改动
6.尽量少操作稳定性不好的第三方软件:如excel处理经常会出现不稳定的现象,如果可以的话,用ini操作代替,这样很大层面上增加了自动化的稳定性
7.自动化需考虑成本:做自动化的时候,我本着一切可封装的原则去实现,但是后来发现有些东西基本不可能变化,而函数封装的成本有点大,这时候就没有必要去封装了,用常量也ok。自动化肯定是要考虑投入产出比的

上周就总结了这些,以后慢慢地持续总结~~

你可能感兴趣的:(ruby 自动化 经验)