一、 自动化测试 发展

  自动化技术在不断的发展,从简单的录制回放到数据驱动到关键字驱动,再到模型驱动,每一次自动化技术的发展都会带来自动化测试工具的革新,而每一次新的测试工具的诞生都会带来新的突破,新工具的出现带来了新的体验但是也不可避免的有一些缺陷,正是因为此,才推动测试框架不断的完善,强大。

  二、淘宝 自动化测试框架发展

  随着自动化技术的发展,淘宝自动化测试框架也在不断的完善,从Tcommon到Automan再到现在的AutomanX,测试框架的完善带来的是自动化效率的提升,相对来说,AutomanX已经相当的完善了,但是AutomanX是一个集成化,模块化的的测试平台,需要测试人员具备一定的编码能力,并且对mvn,junit,spring等技术有一定的了解才可以进行测试脚本的编写,同时,AutomanX是基于pageModel的,在进行脚本编写时,需要先建立pageModel,增加了脚本编写的 工作 量,基于此,我们又开发了新的自动化测试框架 AutoRobot ,来完善AutomanX的这些问题。

  三、AutoRobot介绍

  1.功能介绍

  AutoRobot是关键字驱动的测试框架,核心基于Selenium2.0。AutoRobot针对不同能力的测试人员提供两种脚本设计方式,一种为NoCoding方式,通过选择页面元素及对应操作来完成测试步骤的设计,另外一种为传统的Coding方式,通过编写代码完成测试脚本设计,无论使用哪种方式,AutoRobot都支持自定义的关键字设计,除了框架提供的统一的关键字定义外,不同业务可以根据业务需要设计适合自己的关键字。

  2.整体架构

  AutoRobot使用Selenium进行元素交互,使用Freemaker进行操作步骤和测试代码转换,使用junit进行测试用例组织,使用chrome插件进行页面元素自动拾取,在这些基础之上AutoRobot支持各种关键字的扩展。

  3.NoCoding脚本设计

  AutoRobot使用Chrome插件进行元素拾取,使用关键字定义进行元素操作,设计好的测试步骤可以转化为自然语言描述的操作步骤,可以转化为java测试方法,还可以转化为XML语言描述的测试步骤。

  4.Coding模式脚本设计

  使用Coding模式设计脚本,可以完全不需要在WEB上进行操作,但是最好的方式是先使用NoCoding的方式设计好测试步骤,再利用AutoRobot提供的java工程下载功能,将转换为java工程的测试下载到本地。

  通过AutoRobot下载的java工程是一个完全可运行的工程,如果对自动转换的脚本需要进行修改完善,可直接再导入后的工程中进行修改编译。

  四、AutoRobot特点

  相比AutomanX,AutoRobot具有以下特点:

  1.基于关键字驱动方式item.operation(value)原理,使得脚本、业务、数据分离,有效提升了系统的可扩展性。

  2.通过Chrome插件的方式进行页面元素定位自动拾取,降低页面元素拾取与定位的难度。

  3.使用原生selenium元素查找方式,弱化pageModel概念,无需手动建立pageModel,极大的节省了pageModel建立维护的时间,同时提高了元素定位的效率。

  4.支持NoCoding与Coding并存的用例开发模式,极大提升了用例编写的灵活度和降低用例开发的难度。

  5.测试用例xml化,自然语言描述化,便于用例手动重现。

  6.整个系统采用Web系统 & Chrome插件 & 核心框架,秉承高内聚、低耦合理念,极大的提升了代码的可维护性和可扩展性。

  7.More and more in the future...

  五、如何部署

  1. Chrome插件(Noselector.crx)安装

  地址: \\10.232.23.62\软件备份\PC自动化框架组\5_Software   或者通过云盘下载:http://yunpan.alibaba-inc.com/group/106778

  打开Chrome浏览器的扩展chrome://extensions/,拖动Noselector.crx到扩展页面即可安装。

  2. 操作步骤编辑

  元素步骤页面,待测网址中输入测试页面,进入待测页面后,先点击元素定位器输入框,再点击Chrome插件图标开启插件,然后点击元素,则元素定位方式会自动填入元素定位器输入框中。

  AutoRobot元素定位器展示方式使用Jquery的语法,如果不喜欢抓取的方式,可以直接再元素定位器中进行编辑。

  如果要操作浏览器或者是自定义的控件类型,则无需编辑元素名称和定位器,在元素类型中选择broswer,然后在操作中选择对应的方法即可,比如登录操作被封装在了broswer中,如果需要进行登录操作,在类型中选择broswer,在操作中选择login,在参数值中输入用户名和密码,使用逗号隔开,输入完成后保存即可。

  3. 下载java工程

  通过AutoRobot写自动化用例一般不需要测试人员创建测试工程,但是有时为了调试脚本,增强脚本的健壮性,可扩展性,或者为了增强自身的编码能力,也可以先使用AutoRobot编写好测试用例,然后下载测试工程,使用传统coding方式进行脚本编写。

  选择某个测试项目,点击“下载Java工程”,即可下载该项目对应的测试工程。

  “下载Java工程”会将测试项目工程压缩后下载到本地,解压缩后,使用eclipse的导入工程,将测试工程导入eclipse,导入成功后,则可以在eclipse中进行测试脚本的编写。

淘宝新自动化测试框架AutoRobot简要介绍相关推荐

  1. 淘宝PC自动化测试框架AutomanX-王超

    淘宝PC自动化测试框架AutomanX-王超 淘宝网集成PC自动化测试框架AutomanX,是一套模块化.集成化.产品化的自动化测试框架,是支撑淘宝网.一淘网.天猫.聚划算.阿里云等测试业务线自动化测 ...

  2. 阿里淘宝新势力造型合伙人P8、年薪百万的欧阳娜娜也躲不过的魔鬼面试,看的我心服口服

    阿里淘宝新势力造型合伙人P8.年薪百万的欧阳娜娜跳槽了,这不是关键. 她参加了网易有道明星语音录音员/代言人的面试,这也不是关键. 关键是她教科书式的面试过程,狠狠地给我们上了一课. 我是无意间刷到的 ...

  3. 四核驱动的三维导航—淘宝新UI(设计篇)

    前面有一篇博客说到了淘宝UWP的"四核驱动的三维导航-淘宝新UI(需求分析篇)",花了两周的时间实现了这个框架,然后又陆陆续续用了三周的时间完善它. 多窗口导航,与传统的导航方式的 ...

  4. 淘宝新店铺怎么提升流量?方法有哪些?

    现在淘宝开店的商家可以说是越来越多的哦,在这种情况下,要做好淘宝店铺并不容易哦,那么淘宝新店铺怎么提升流量?方法有哪些?下面的内容中为大家进行介绍,希望对大家有所帮助.   1. 首先,要给自己的淘宝 ...

  5. 弘辽科技:淘宝新链接要怎么补流量?有没有提升新链接的办法?

    淘宝假如上了新链接,其真实开初是没有几流量的,所以,这时分就需求去提升这个流量,那详细要怎样补流量?下面我们就来说下,新链接补流量的办法,想理解的朋友能够来看下就晓得该怎样做了? 有没有提升新链接的方 ...

  6. 2022年淘宝女王节预售活动时间介绍

    2022年淘宝女王节预售活动时间介绍 话说时间就快到3月份了,本月有哪些活动值得关注啦?首当其冲的是"三八妇女节"活动了,据悉,现在阿里旗下的他们和淘宝都已经开始招商中了,2022 ...

  7. 弘辽科技:淘宝新商家怎么做起来?如何经营一个新店?

    淘宝新商家经营的难度肯定是比以前人少的时候更复杂,所以,新商家开店后的第一件事,就是想知道怎么把店铺做起来? 如果,大家有兴趣,那可以跟我们来看看,新商家经营的部分,希望可以给你点帮助. 一.淘宝新商 ...

  8. “四核”驱动的“三维”导航 -- 淘宝新UI(需求分析篇)

    "四核"驱动的"三维"导航 -- 淘宝新UI(需求分析篇) 原文:"四核"驱动的"三维"导航 -- 淘宝新UI(需求分析 ...

  9. 弘辽科技:淘宝新链接怎么提升销量?需要注意什么?

    淘宝新链接商品是没有什么流量的,并且关于有些商家来说,要想把新链接推行进来,也是比拟难的,于是就会想到提升销量的方式.那么,淘宝上新连接需要怎么去提升销量?有上面要注意的? 淘宝新链接怎么提升销量? ...

最新文章

  1. 超准中医体质测试 源码_心理测试:这几张心理测试图,一眼看透你的内心!不信你来试试!...
  2. layer iframe层的使用,传参
  3. asp.net常规页生命周期阶段列表和事件列表
  4. 2017广东工业大学程序设计竞赛决赛 题解源码(A,数学解方程,B,贪心博弈,C,递归,D,水,E,贪心,面试题,F,贪心,枚举,LCA,G,dp,记忆化搜索,H,思维题)...
  5. windows下最好的围棋_学围棋能使学习成绩提高吗?
  6. selectprovider 分页_MyBatis使用@SelectProvider拼接sql语句
  7. 团队建设及管理上的举措_为什么在副项目上工作是您作为开发人员的最佳举措...
  8. 使用mysqlsla 分析 mysql logs
  9. jQuery取得select选中的值
  10. 支付宝web支付,mobileclientgw-
  11. 易语言短信接口_易语言调用腾讯云发送短信例子源码
  12. javaWeb——servlet的认识及Tomcat动态部署
  13. 安卓view.getMeasuredHeight()得到的高度单位以及dp和px的转换
  14. 计算机计算累计公式,““请问Excel表格求的合计数为什么和用计算器累加出的合计数不一致...
  15. java设计模式(1)
  16. explain mysql 耗时_借助慢查询日志和explain命令分析 MySQL慢查询语句分析总结
  17. 什么是外网服务器?如何搭建外网服务器
  18. 启动虚拟机异常(完整版)——如果已在 BIOS/固件设置中禁用 Intel VT-x,或主机自更改此设置后从未重新启动,则Intel VT-x处于禁用状态
  19. PPT结束语有哪些?
  20. VANCL取代PPG 陈年超越卓越?

热门文章

  1. python画一颗小心心
  2. [置顶]《游戏引擎架构》信息总汇
  3. 好用的磁盘管理工具:DiskCatalogMaker for Mac
  4. 3分钟短文:Laravel的“南天门”,过滤掉七七八八的数据
  5. cookies是什么
  6. 关于安装双系统时多重引导的说明
  7. 冷暖自知 by 张楚
  8. 阿里天蝎计划 服务器部署效率提升10倍
  9. Redis开启远程访问及密码认证
  10. w10计算机怎么恢复出厂设置路由器,Windows10系统重置无线wifi出厂设置的方法