淘宝测试自动化测试框架

上传:treesly 浏览: 20 推荐: 0 文件:PDF 大小:1.27MB 上传时间:2020-07-29 02:57:39 版权申诉
淘宝测试自动化测试框架,个人觉得还不错,建议下载,觉得不好的勿喷,只是技术分享22示例代码参见http://www.github.com/automan下automan-client包的example文件夹3 PageModelPage Model是我们 Auto man的三大组件之一,用于将页面元素结构化的抽离出来,进行统一的页面对象库管玨,它的最大优势是灵活应对页面变化。QTP也有自凵的对象库,但是它的对象厍是在客户端的、并且是平铺式冇放管理页面上控件。与QTP不同, PageModel主要有三方面的优势:首先,允许用户根据使用的需要将页面控件有组织的、有结构的进行管理,方便对臾面控件的组织;其次,允许用户在还不确定页面控件只体属性的时候,先在对象库创建控件结构,方便用户在项目中开发未提供具体页面时候就可以开始编写代码,提高效率;最后,采用web化的方式进行管理,实现对象库控件的共亨,适合企业级的应用。这里主要给大家介绍:用于查找和定位控件的 Selector;页面 PageModel的两种组织方式 element和 submodel;及对象控件的数组模式处理 collection3. 1 Selectorselector是用于査找、定位控件的査找器。支持 JQuery语法。表3-1罗列了目前支持的所有 JQuery方法。表3-1 Selector JQuery语法表Selector解释示例#id用表示目标元< nPuT id=on1 onclick= =change stuffstatu5)vaue=5素的|dtype=rad查找 selector="#on1class目标元素的das, INPUT id= TPL password class=login-text tablndex=2用“"表示value="type=password name=TPL_password>当cass或d里面查找 selector=" login-text”(只是个例了,当然这里也包含当属性里出可以用d来找的)现#,+*S[()=>查找 selector=" red\\ login”/|或空格时,应该加转义字符\element目标元素的tag名< I FRAME style= PADDING-BOTTOM:opX; PADDING-LEFT称,不区分大小写0 X: WIDTH628x;PADD| NG-RIGHT:0px: HEIGHT(一般不单独使350px; PADDING-TOP:0px"id=_ editor class=rtb用)marginHeight=l frame Border=1margin Width =1>查找 selector=" Iframe"或见下面的多重条件多重条件目标元素应当同< FRAME style="PADD| NG-BOTTOM:0pX;PADD| NG-LEFT时满足多个查询0 X: WIDTH:628X;PADD| NG-RIGHT: OpX; HEIGHT:条件350px; PADDING-TOP: Opx id= editor class=rtbmarginHeight=1 frame Border =1marginWidth=1>查找 selector=" iframe井 editor rtb”或selector=" iframe . rtb#_ editor”也可以少写点条件的,能唯一确定了就好了,如 selector=”# editorparent>child目标元素是一个日hlil="1ogo"容易确定的元素B-ahref=http://www.taoba查找 selector=”"#logo>aancestor目标元素是另descendant个容易确定的元ul class=“tabs"id=“ T Logintab分口ic1ass=“ tab standar d素的后代(子孙),白…< dir class-"bo由< span c1ass="rc-t使用空格F- p. register-btn img"eqo目标元素不能唯口·( class="1ogim- notlce确定时,可以指由Kahrefhttp:servic白taobao定是第几个。从0C-ahref=http://servicetaobaocg开中i上①i+找第一个下的第二个a,使用査找selector=.login- notice>li: eqo)>a: eq(1)可代表任意tag不经常使用比1 Tr class= box dynamI C-mode⊥0g1I-bzsE.ul class="tabs" id="] LoginTabs">11s三“b三tA,田19 ecure mode selected找u下的两个使用查找 selector=“# Login Tabs>*”,这时u下所有的儿子都会返回。当然,也可以用 selector=“ Login Tabs>i"。多个元素的返回,参见 Collection填写说明name=auel目标元素不能唯< INPUT name= names value=5一确定时,可用他查找 selector=" nput[name= names\\n\]的属性做过滤当属性里出现#:&,+*~:"!^S[]()=>/|或空格时,该加转义宁符\级匹配所有跟在abel后面的
dⅳ元素使用:"di结果:【< div>John ResigMalcom JohnSinclairs/div> Iempty查找所有不包含td>td>的空元素Value 2,]给所有包含p元sp>He/>/dv素的d元素添< div>Hello again!Vaue1,< td>value2子元素:first-child匹配第一个子元Johns/i>frst只匹配一个|<>Kar<元素,而此选择符|<> Brandons/i将为每个父元素匹配一个子元素
  • GlenRalph使用:"uli: first- child"结果:[<|i>John,i>Glen]ast-child匹配最后一个子Kark/i素,而此选择符将|<|> BrandonGlen
  • Tane
  • li> Ralphs/li>
    使用:" ul li last- child结果:[<|> Brandon,
  • Ralph]nth-child匹配其父元素下JohnKark
  • Brandons/i/ul>
  • GlenTane
  • li>Ralphs/i>使用:hild (1)结果:[
  • Kark,<|i>Tane
  • ]only-child如果某个元素是父元素中唯一的-JohnKak/i少
  • Brandons/如果父元素中含|有其他元素,那将不会被匹配。
  • GlenGen]3.2 Element submodelE| ement和 Submode是 pagemodel的两种组织方式,前者是控件的最小操作单位,即下面不能再有子结点;后者是一个区块,下面可以有多个子结点, submode|下面可以有多个 element和 submodel。如图3-2所示: My CartAge这个页面下有一大的 submodelmy cart records,下面可以包含多个子 submodel,每个子 submode下面会有各自的 element,如 shop info下面就有两个 element,分别是: chk choose shop和shop_ mjs info。显然用户可以通过这样的类似搭积木的方式,可以将一个平面page立体画起来,方便对控件的管理。至于将怎样的一个区域定义为一个 submode用户可以根据自己需要定义。又中文MyCartPage > my_cart_ records > shop_info > chk_ choose_shopau my car.records K⑥ Element C日② record infos择店铺枉Q帮動i for Shon#肋集合:◎是@至鱼帮助在止的时□0帮助emen(出如一盐使用示等,不会在运行志中已对保存删除此控仁图32 submodel和 element示意图3.2.1 ElementElement是贞面控件的最小单位,在 PageModel上配置的 element的时候会需要我们填写元素类型,因为不同的控什类型有不同的操作方法。例如: textfield的控什会有set方法,而 button类型的控件有 click方法。另外如何判断一个页面控件是什么类型的,也是我们需要知道的,表3-3列出了新增e| ement类型说明及具有的方法。表3-3 element类型及方法Element对应页面后台对应类犁方法继承父使用场景类型控件tag类方法默认Any(任何|AWat: AElemenclick,text控件点击,取值等tagget, exist?Button ButtonAWatir: AButton clickclick对 button框的点text,get,击xist?CheckBo Input(type AWatir: ACheckBset, clearclick对 CheckBox框的=checkbox oxtext, get选择和取消选择exist?LinkLA等可 AWati: ALinklickclick对ink的点击以被点击text, get的节点existTextField| Input, text AWatir: ATextFiel setclick对普通输入框的area, text dtext,get输入操作exist?SelectLis SelectAWatir: ASelectLi set, selected click对下拉框的选择vaue, options|text,get,操作exist?noWt会导致弹 AWati: ANoWait| clicktext,get,当点击之后有系出框出现| Elementexist?统弹出框的控件的节点,的点击操作如 buttoninput等Radioinput(type AWatir: ARadio set, clear对Rado框的选择radio)text, get和取消选择xist?rich_text BodyAWatir: AlnnerTe setclick对富文本框的输xtsetElementtext,get入操作exist?322 Submodel与 element的相对路径我们需要査找一个 element时需要填与 selector,而这个 selector就是在一个范围内用什么方式能找到这个控件。所以当我们直接在这个page下定义了 element,那你填写的selector就是在这个页面内查找这个控件,当我们的 element是定义在 submodel下的,那我们的 selector只要写在这 submodel下的能找到这个控件即可,这个就是相对路径查找。举例说明:如图3-4所示,现在需要定位到控件“秋冬打底裤”+家图 le Find Lisle Vien Cline Inages时ttext淘宝网ADIV cla:Fr 950 i+pg主隔淘吧导clis: W>请输入要搜索的溶q搜索c邻日关上升一周关注门更多苍单1于1F尚限数码鸡s秋层靴于故品家兵版饰旁食品雳4修息长款毛衣4们们相思红I521专函车[具把物榜图3-4定义的 submode和eeme这里用两种方式查找“秋冬打底裤”
  • 上传资源
    用户评论

    sunpower97788 2020-07-29 02:57:39

    阿里第二代自动化框架,还成!

    yu82799 2020-07-29 02:57:39

    不错,这个框架真正实现了pagemode

    decrease6408 2020-07-29 02:57:40

    简单介绍,有点用

    airrun 2020-07-29 02:57:40

    可以,是我需要的

    相关推荐
    软件测试软件测试自动化框架自动化框架
    软件自动化框架的介绍:本文详细阐述了当今存在的几种自动化测试框架.并进行了比较然后介绍了一个关键字驱动的自动化测试模型.以说明框架的具体实现方法。
    PDF
    0B
    2019-09-10 08:45
    自动化测试框架
    基于CODEUI的自动化测试框架设计,采用文本模板引擎生成相关代码
    PPTX
    0B
    2019-01-10 10:33
    QTP自动化测试框架测试脚本
    QTP自动化测试框架,测试脚本临时的,过渡性质
    RAR
    0B
    2019-06-01 08:24
    自动化测试实践_应用QTP测试框架
    自动化测试实践,基于QTP的自动化测试框架。对于自动化测试框架有比较详细的描述。
    PPT
    0B
    2019-05-20 09:46
    软件测试自动化测试框架.doc
    随着科技的不断发展,越来越多的产品开始实施自动化测试,自动化测试也是未来发展的一个趋势,面对这种趋势,我们应该怎么来实施自动化测试呢 ,如何来选择自动化测试框架呢,下面我就来谈谈自动化测试框架 随
    DOC
    26KB
    2020-08-30 05:39
    自动化测试框架工具
    教学用框架
    ZIP
    0B
    2019-02-16 17:23
    自动化测试框架介绍
    技术Jekins+python+appiumPthon+appium:目标封装用户行为,实现关键字驱动自动化
    PPTX
    0B
    2019-05-06 15:24
    QTP自动化测试框架
    包括自动化测试实施规划 自动化测试源于手工测试 基于功能分解的自动化测试框架 使用TD+QTP管理测试脚本 测试自动化实现的两个难点 功能分解 Web对象的识别 静态Web对象的识别 动态Web对象的
    PPT
    0B
    2019-03-07 16:19
    自动化测试框架_QTP
    公司中正在使用的另一款框架,非常有参考性
    zip
    0B
    2019-03-03 01:36
    SELENIUM测试自动化框架
    SELENIUM自动化框架简洁,有兴趣可以下载下来看看,以后项目有用
    PDF
    0B
    2019-01-18 05:10
    自动化测试框架unittest
    自动化测试框架unittest自动化测试框架unittest自动化测试框架unittest
    ZIP
    0B
    2019-05-25 10:54
    Maui自动化测试框架
    MAUI introduction 、Maui 自动化测试框架
    DOC
    0B
    2019-01-10 12:30
    selenium自动化测试框架
    集成Pyton语言unittest方法,从而便于测试场景的管理,run.py是ECShop工程脚本执行的入口。此处将用户注册、用户登陆测试场景统一设置在test_Ecshop函数中并调用执行,根据函数
    RAR
    0B
    2019-01-19 16:53
    WebUI自动化测试框架
    本项目是一个基于Selenium的Web自动测试框架,通过该框架可以简化测试人员的学习难度,只要编写少量的Java代码即可,大多数的工作都是编写页面元素的描述文件以及对应的数据源。
    ZIP
    0B
    2020-01-27 14:45
    robotium自动化测试框架
    Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API,能够对各种控件进行
    RAR
    0B
    2019-07-19 00:16