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

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

一、自动化测试发展

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


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

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


三、AutoRobot介绍

1.功能介绍

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


2.整体架构

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



3.NoCoding脚本设计

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

  

      4.Coding模式脚本设计

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

      下载完成后解压缩,使用IDE导入工程,可以看到一个完整的测试工程,如下图所示


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


四、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...


试用地址:http://daily.kelude.taobao.net/pf/(只支持阿里内部使用)

有任何意见或者建议,可以直接留言,谢谢


五、如何部署

            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插件图标开启插件,然后点击元素,则元素定位方式会自动填入元素定位器输入框中,如下图所示


< !--[endif]-->


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

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

<!--[if !supportLists]-->3. <!--[endif]-->下载java工程

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

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


< !--[endif]-->


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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Windows系统中,可以使用一些程序来实现自动发送QQ消息的功能。其中一个常用的方法是使用AutoRobot程序。该程序使用了Windows自带的API函数,兼容性好,发送稳定。它支持后台发送,即使聊天窗口当前没有在使用也可以发送,锁屏时也可以发送。你可以在电脑上设置好发送时间,第二天一早自动发送消息(请确保电脑不会待机或休眠)。使用AutoRobot程序的步骤如下: 1. 首先,运行PC端的微信或QQ,并打开需要发送信息的聊天窗口。 2. 然后,运行AutoRobot程序。 3. 将AutoRobot程序上方的黄色方框拖动到目标聊天窗口上,并松开鼠标。这样就可以获取到目标窗口的ID。 4. 在AutoRobot程序的下方输入框中输入需要发送的文字。 5. 最后,设置定时发送的时间。 如果你想编写批处理脚本来自动运行timer.py和click-this-to-run.bat,可以按照以下步骤进行操作: 1. 创建一个文本文件,命名为click-this-to-run.bat。 2. 在该文件中输入以下代码: @echo off C: cd C:\Users\Jerry\Desktop\QQautosend start pythonw timer.py 3. 保存并关闭该文件。 4. 然后,你可以双击运行click-this-to-run.bat文件,它将自动运行timer.py程序。 请注意,以上方法仅适用于Windows系统,并且需要提前安装好Python环境和相应的依赖库。 #### 引用[.reference_title] - *1* *2* [AutoRobot微信/QQ定时自动发](https://blog.csdn.net/VBcom/article/details/107051271)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [vbs定时自动发送qq消息](https://blog.csdn.net/weixin_40650190/article/details/104233955)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值