前面说到在实施冒烟测试自动化时候,当时使用的selenium1.0所支持的浏览器版本太低,无法满足我们的需求,面对这个问题,唯有升级我们的框架,可是面前有1千多条自动化用例等着,的确需要花费很大的人力和时间来完成。当时后台组也已有人研究过Webdriver,在其中一个产品中用起来了,但是并没有对原来的东西全部升级,不过至少证明了它的实用价值。当时我跟我老大说我研究下Webdriver,OK的话要不我们索性全部升级吧。当时他还持怀疑的态度,毕竟这并不是一个小的工作量。

就这样开始了升级之旅。刚开始时就是我自己查了很多的资料,通过新建一个项目,把原来下面所有内容复制过来,把Maven的POM文件中dependency全部改成了全新的Webdriver,然后对框架中driver实例化的地方进行了修改,当然这些还远远不够。因为两个版本设计理念不一样,原来的方法也无法通用,为了便于日后分享给大家顺利开展工作,是很有必要把两个版本如何操作页面元素的做个对比。接下来就是把我们日常用到的方法罗列出来,包括打开页面,点击元素,输入,下拉选择,单选,复选,获取文本内容,弹出框,frame的操作等等,接着把在1.0里的方法写出来,把2.0对应的方法也写出来,然后再对其中一条用例进行实验,把底层这些方法改成新的。

到这里,钻研之路就进行的差不多了,见证奇迹的时刻到了。如果我说一运行case就通过了,也许这并不值得怀疑,但是事实上并没有这么顺利,中间遇到的诸多事宜我也记不清了,但是好在最后的确是通过了。我甚是欣喜,告诉了我老大,同时我组织我们组其他几个做自动化的同学开始了全面的升级行动。我把中间做过的事情整理成了文档,把1.0 VS 2.0的方法整理成表格,方便大家对照修改。当时我们做这个的顺序是:第一步,把所有底层的方法对照着表格全部改完,认真思考的你可能也看出来了,这的确是个苦差事,已经没有什么技术含量了;第二步,分工把所有的冒烟级别用例重新调试运行直到测试通过。

经过大家一个Q的努力,升级工作圆满结束,不过在这之后,原来那1千多条case其实也被我们放弃了,主要原因并不是调试的工作量,而是那些是之前专门的自动化组写的用例,很多都不是按照业务重点来写的,对我们的价值并不大,之后我们所完成的400多条都是基于重新梳理手工用例后实施的,当然这些也都是基于新升级的框架上写的。当时在升级过程中关于如何进行的修改还写了一篇博文,请查看历史文章。


我在兰亭这三年之自动化框架升级相关推荐

  1. 我在兰亭这三年之开展自动化

    在我刚入职时候,部门的组织架构还是分功能测试组和自动化组,每个组的负责人都向CTO汇报,功能测试组都是做纯功能测试的,而自动化组包括测试环境的搭建维护,自动化框架开发,自动化用例编写及性能测试,当然不 ...

  2. 我在兰亭这三年之AutoDiff自动化测试框架

    不知不觉已经写了8个关于我在兰亭这三年的主题,其实在刚开始起草的时候就已经想好了写哪些内容,预告一下总共有10个主题,这是倒数第二个.我在前面也讲过两则关于自动化的主题,其实之前的实践还远远不止这些, ...

  3. 我在兰亭这三年之大促的那些事儿

    在说去年兰亭第一次搞这种大型促销活动之前,有必要跟大家说一下国外几个非常重要的购物节: 感恩节(Thanksgiving Day) 感恩节是每年11月的第四个星期四,由美国创立,原意是为了感谢上天赐予 ...

  4. 我在兰亭这三年之部门动荡

    如果你要问在什么样的企业里晋升最快,莫过于2种:一是快速成长的公司,业务膨胀需要大量的新进人才,而原来出色的老员工自然而然有机会带领团队:二是动荡的公司,人员流动率较高时也会有大量的leader离职, ...

  5. 我在兰亭这三年完结篇之离开

    终于到了我在兰亭这三年系列的最后一个话题,有些沉重也有些伤感,但是对于我们绝大多数人又不得不面对的,那就是离职. 从第一天加入兰亭开始,对我来说这真的是一次幸运的旅程,遇到了很多优秀的小伙伴,同甘共苦 ...

  6. 我在兰亭这三年之跳出率升高门

    [正文] 跳出率,英文称为Bounce Rate,简称BR,表明了用户对当前所浏览的网站的喜爱程度,指在某个时间段内,用户进入一个网站只浏览了一页即离开网站的访问次数占总访问次数的比例.BR越高,说明 ...

  7. 我在兰亭这三年之第一个项目

    [前言] 在兰亭这段时间里,做了很多项目,前前后后加起来有10几个大版本和项目及很多的hotfix,当然每一个项目中都有收获,都让我得到一点点的积累和沉淀.但是让我记忆犹新的还是第一个项目. [正文] ...

  8. 我在兰亭这三年之我接触的郭去疾

    [前言] 在兰亭从11年7月一直到14年3月差不多3年的日子,经历了不少事,接下来算是碎碎念写一下发生过的主要的事情,算是给自己的经历留个存档,没准很多年后再来回首过往.今天这篇就是讲一下我接触过的天 ...

  9. UI自动化与接口自动化框架思维

    aototest(V1.0 以线上运行) maven+TestNG+selenium+Excel的UI自动化框架升级版本解剖图 项目简介 maven:是一个项目管理工具,主要用于项目构建,依赖管理,项 ...

最新文章

  1. angularjs 中的scope继承关系——(2)
  2. Base64编解码(C++版)
  3. mongodb 教程一
  4. Java NIO 和 IO的区别
  5. Google Earth Engine(GEE)——获取RSEI各组成指数(ndvi\lst\wet\ndbsi)的各部分的逐年影像下载
  6. 短视频网站源码干货分享:如何实现背景音乐和美颜功能
  7. 计算机基础与程序设计
  8. WebService简单案例实例
  9. xmapp启动之路径错误
  10. 信号与系统中的信号带宽理解
  11. 技嘉x79up4支持服务器内存吗,技嘉X79-UP4主板硬件规格解析
  12. Java对象转为Json格式的String
  13. Python+Pgzrun制作打飞机游戏(附源码)
  14. iphone功率测试软件,iPhone原装5W充电头充电功率测试
  15. 林达华博士对数学的见解
  16. 量化交易接口怎么自动选股票?
  17. 字符格式(gbk utf8等)
  18. Windows IDEA 字体美化
  19. 基于 Apache Druid 的实时分析平台在爱奇艺的实践
  20. 机器学习基础知识、与图像处理等技术的关系

热门文章

  1. 无屏幕和键盘配置树莓派WiFi和SSH
  2. 第七节:HtmlHelper及其扩展
  3. win7 登录界面---管理员账户禁用与显示
  4. github上传流程图记录
  5. Webpack 代码分离
  6. (转)Python rsa 签名与验证 sign and verify
  7. 如何开启PostGreSQL的远程访问端口?
  8. Silverlight实用窍门系列:52.Silverlight中的MVVM框架极速入门(以MVVM Light Toolkit为例)...
  9. xp/win7,添加开机启动项
  10. 推荐一个 开源C#股票软件