自动化脚本在写完以后,可能根据需求的变更和代码的改动,自动化测试脚本也要相应的改变,这个过程往往贯穿于整个软件测试的过程中,并且是最费时间的一项工作,比开发脚本还要麻烦。那么,在开发脚本的时候需要注意什么, 才能让写出来的脚本更加好维护呢?
当业务发生重构,脚本怎么办?换句话说,脚本怎样才可以更高效的拥抱变化?
首先,确认下变化来自哪里?来看一个脚本的构成:
(1)数据准备
关联Automan DBmodel &websql部分
(2)执行流程,关联Automan pagemodel
(3)数据校验,包括数据库校验,页面文本校验
由此可以得出,脚本要拥抱变化,一定要做到灵活的数据源配置与模块化的业务逻辑构成,关联到现在的自动化平台的DBmodel和Pagemodel 。
1. 数据源的变更
1)数据源变化
如数据库由Oracle转向Mysql
影响脚本的数据准备及数据校验部分
2)数据库表的组织由单个的库和表转为分库分表的分布式存储。
2.业务变更
业务的变更很多时候会影响到页面元素的修改,大体有以下几种情形:
1)新增对象库中的element 按钮 ———–补充流程,脚本修改
2)页面元素不变 处理逻辑优化 ———–脚本不动
3)页面元素改动 流程不变 ———-修改对象库,脚本无需修改
4)页面元素&执行流程都发生变化 ———–新增脚本
当业务个变更使得原有的脚本不得不作出修改时,需要考虑的是怎样将维护脚本的工作量尽量减少。那么,面对不得不改的脚本,怎么更好的拥抱变化?
设想方案:抽象+分层+版本控制。
(一)适当的抽象
1)数据源的动态配置。
应对数据源的更新变化。可以利用配置文件的方式描述数据源的各种信息。在脚本代码中只需要进行一次配置即可。类似与webx的数据源配置文件。当数据源发生更改时,也只需要更新相应配置文件即可。