淘宝PC自动化测试框架AutomanX-王超
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PC自动化测试框架组
核心组件
JMockit DbUnit Jasmine Junit Selenium 2.0 Surefire插件
扩展开发 提炼思想
JQuery Data Driver Page Model Spring Logger Analysis WebX & Hsf
Fra Baidu bibliotek
PC自动化测试框架组
执行调度
PC自动化测试框架组
8
附录:前端测试方案概览
前端单元测试
•原理:基于jasmine-maven-plugin
插件
动态页面交互测试
•原理:AutomanX & Seleniumwebdriver •功能:页面元素功能验证; javascript模拟点击;异步校验
•功能:支持jasmine的单元测试
校验 CSS CSS校验
附录:页面对象模型二
PC自动化测试框架组
附录:Web UI用例工程结构
�典型的Maven项目
� A:测试用例基类 � B:测试类 � C:测试数据 � D:配置文件 � F:pom.xml
PC自动化测试框架组
附录:Web UI用例结构
�典型的Junit用例结构
�Script include Data �Script & Data
兼容性测试 •浏览器同步工具 •功能自动化兼容性测试 • JS兼容性测试
PC自动化测试框架组
基础组件
Module Component 基础组件 Browser Element Selector Exception Listeners XmlToJava Runner PM System Logger … 扩展组件 FileUtil BrowserUtil LinkUtil CSSUtil ImageUtil PopWinUtil Assert … Core 组件 Core组件 Junit扩展 DataDriver Hsf WebX Spring DbUnit Tddl CommonUti l Mock …
Non Jar模式
�无Page Model Jar包 �将page model类文件 从page model系统下载 到当前测试工程 �Page model类文件无 需上传的SVN �优点:流程简单 �不足:工程变大
Non Jar SVN模式
�无Page Model Jar包 �Page model类文件上 传的SVN �将page model类文件 从SVN下载到当前测 试工程 �优点:流程简单 �不足:SVN臃肿, 不利于Page Model维护
淘宝PC自动化测试框架AutomanX
王超
测试平台与发展--PC自动化测试框架组
概要
� � � � � � � 项目简介 功能介绍 基础组件 核心构建 执行调度 框架特点 附录
PC自动化测试框架组
项目背景
Our aim is to make it perfect …
� ? What What? • AutomanX是基于iTest与Automan,并融合前端测试方案的淘宝新生代PC自动化测试框架 ? Why Why? • 降低准入门槛:统一测试用例开发语言至Java • 降低支持成本:提供统一的PC自动化测试框架,避免多框架的维护 ? How How? • 框架革新:丰富的数据准备、页面对象Jar包机制、Method级别调度、前端测试方案、Http 测试、测试用例Junit结构化、数据工厂融合、Kelude平台调度等等 • 脚本向前兼容:提供工具将原来的Ruby脚本轻松批量转换成新形式 • 框架向前兼容:提供跟原来相似的API和编程思路使测试人员能平缓过渡到新框架使用
�
�
PC自动化测试框架组
3
AutomanX功能简介
前端测试方案 •前端单元测试 •前端交互测试 •前端校验(Link、CSS) Web UI 测试 UI测试 •功能自动化测试 •Http请求测试 •WebX测试(类Spring Unit)
测试 API API测试 •单元测试 •HSF接口测试 •Service测试
�本地运行Eclipse环境下运行,类似Junit �平台运行,主要应用Kelude执行调度引擎Agent
新建 Test Lab
Agent分发调度
调用 Runner SVN用例更新 Build Job
Agent监听 Job
Job 执行 日志推送至Kelude
PC自动化测试框架组
7
框架特点
准入门槛
� 统一测试脚本开发语言 � 前端测试方案、API测试方案、Web UI测试方 案融合,不同类型用例形式统一 � Kelude执行调度平台的无缝集成
�建议模式:用例开发完毕,Release时,建议使用优先级高的模式 �折衷模式:开发过程中,可以使用中优先级模式 �不建议模式:开发方便,但是测试项目和SVN臃肿,不建议使用优先级低的模式
PC自动化测试框架组
15
附录:Page Model Jar包
结构说明 �Base是根节点 �Buy是一个App �CartBuy、BuyNow等是一个个项目 项目添加规则 �应用名.项目名.模块名,比如 MyTaobao.TeJia.Portal 调用说明: �调用格式:projects =Buy.CartBuy, Buy.BuyNow, Buy �调用分析:则会download CartBuy、BuyNow2个项目的 page model文件,Buy会被忽略,Buy就无需设置
PC自动化测试框架组
13
附录:用例日志
�XML日志结构,并与kelude平台无缝集成
PC自动化测试框架组
14
附录:Page Model Jar包
高 中 低
Jar模式
�将Page Model打成Jar 包,deploy到maven库 �配置测试工程的 pom.xml,以引用之前 的Jar包 �优点:便于共享, 工程精简 �不足:流程繁杂
性能提升
� 全新的Method级别调度执行引擎 � Page Model业务线Jar包模式 � 无需运行时定制下载 � Java语言的先天优势
无缝融合 与iTest iTest无缝融合
� 用例结构与Junit完美统一 � 数据准备方案与iTest完美融合 � Maven项目的用例结构
全新的用户体验
� 类似接口测试的测试环境搭建 � 类似接口测试的执行调度 � 强大的 Eclipse
•原理:页面元素的属性值对比 •功能:页面元素属性校验;页面
元素Layout;样式校验
校验 Link Link校验
•原理:http webclient response •功能:批量链接校验;死链接校
验;期望链接配置性校验;链接高 亮校验
PC自动化测试框架组
9
附录:页面对象模型一
PC自动化测试框架组