淘宝新自动化测试框架AutoRobot简要介绍

发表于:2021-10-09 09:22

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佚名    来源:网络

  一、 自动化测试 发展
  自动化技术在不断的发展,从简单的录制回放到数据驱动到关键字驱动,再到模型驱动,每一次自动化技术的发展都会带来自动化测试工具的革新,而每一次新的测试工具的诞生都会带来新的突破,新工具的出现带来了新的体验但是也不可避免的有一些缺陷,正是因为此,才推动测试框架不断的完善,强大。
  二、淘宝 自动化测试框架发展
  随着自动化技术的发展,淘宝自动化测试框架也在不断的完善,从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中进行测试脚本的编写。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号