Automan自动化测试学习总结

发表于:2010-10-12 10:28

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

 作者:yunlu    来源:TaoBao QA Team

  学习自动化测试的脚本编写有一段时间了,想和大家分享一下。欢迎大家拍砖。^_^

  首先分享几点经验:

  (1) 计划:自动化测试学习也是一个循序渐进的过程,可以将这个过程计划成几个阶段。第一阶段,搭建Automan测试环境和熟悉Automan平台的操作;第二阶段,完成珠联璧合自动化测试培训安排的几次作业,完成第二次作业后,就基本上掌握了selector的用法,可以独立构建页面模型。同时,学习各种元素类型及其方法;第三个阶段,熟悉Automan的校验方法,第二阶段相信不少童鞋已熟悉一些简单的文本校验、dialog校验方法,这个阶段,则要深入学习数据库校验的方法。第四个阶段,进行自动化测试进阶学习,如探索怎样更好地创建稳定强健和易于维护的自动化脚本等。

  (2) 学习:百科上自动化小组组织的资料很多,可以针对性地去查看,例如,关于selector的书写,这个刚开始看,只能留一个大致的印象,大家可以在实践地过程中慢慢深入了解;并总结出适合自己的写法;同时,建议大家多看看别人写的脚本,看看别人是怎样组织和构建Page Model,有些什么技巧等等。但在看别人脚本前,要先自己尝试写一下,经过认真思考后看别人脚本,才能达到醍醐灌顶的效果。

  (3) 实践:对于刚开始学习自动化脚本的童鞋来说,肯定会遇到很多障碍和问题,在遇到这些问题的时候,我们该怎么办呢?首先可以在百科中寻找答案,再则,多请教请教师兄师姐,在这里我要非常感谢孙洁和襄襄,感谢她们耐心地指导。当解决完这些问题,应及时沉淀。还有一点很重要,那就是多多实践。俗话说,熟能生巧,实践地多了,就会发现,自己原来也可以独立地解决遇到的问题,并且在脚本中加入自己的思考,而不是生硬地去套那些方法。

  下面是我在平时学习和实践过程中积累的笔记,希望对大家有用。

  一、对象库的创建

  (1) 页面建模

  选择合适的submodel、element和collection页面元素模型会提高对象库的可用性和维护性,也更有利于代码的编写。我的做法是按照页面本身的划分进行组织,被测页面是经过很多人合理规划好的,那我们可以充分利用这一点,进行模块的划分。当然模块分大分小可以视情况而定。这样做的一个好处是,别人复用你的对象库时很好理解,可以很方便找出要使用的元素。

  Submodel和Collection的区别:Submodel指的是模块、Collection是集合,两者都可以再包含submodel和element、collection。一般当具有多个相同类型的元素或模块时,可以指定这些submodel or element是Collection。

  Collection的应用很频繁,一般涉及到table或有相同类型的元素,那么我们就可以定义集合,并通过集合名[i]来访问集合中的元素。例如:

  Apage.basic_info.product_showlist.txt_product_showname[i].set(“”)

  其中,basic_info 和product_showlist为模块,txt_product_showname为集合。

  (2) selector书写

  关于selector的书写,自动化小组已经整理地很详细。这里,我只是收集了自己认为很适用的几个。

  1. #和.

  #用于定位目标元素的Id;

  . 当目标元素有class等属性时,则用.定位。

  2. >和空格

  目标元素是容易确定元素的直接子节点,则是用”>”; 如果是其子孙节点,则用空格;例如:div.ks-editor body.ks-editor-post

  3. selector包含空格

  则可以加\\,如button.J_Submit\\btn

  4. :eq(i)

  目标元素不能唯一确定时,可以通过tab:eq(i)来指定是第几个元素。从0开始。

  5. [name=value]和[name*=value]

  属性为value,如input[name=q]

  属性包含value,则用[name*=value]

  二、脚本编写

  所谓自动化脚本,其实是用脚本去模拟手工做的操作,那么我们在写脚本前,要充分了解我们要做哪些操作。然后再针对性地建立页面模型和利用建立好的模型编写脚本。

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号