QTP,自己主动化測试学习笔记,六月九号
測试自己主动化实现的两个难点
设计——功能分解
实现——对象的识别
測试自己主动化实现的两个难点—功能分解
清晰画出业务流程图
依据业务流程分解业务功能。能够被复用的功能也要被分解出来。
依照路径覆盖的思想。组织測试用例
測试自己主动化实现的两个难点—对象识别
创建測试 获取被操作对象的属性信息
使用唯一的对象名在对象仓库中记录该对象。
标识关键属性信息
在脚本中记录对象名称和对应的动作。
执行測试
从脚本中获得对象名称。
在对象仓库中定位对象。并获取其关键属性。
依据关键属性信息在被測应用中定位对象。
依据脚本中录入的动作执行对应的操作。
測试对象管理机制 Resources->Object Repository(对象仓库)
| 序号 | Web对象 | 推荐识别属性 | 方法參数 |
| 1 | Browser | creationTime | |
| 2 | Page | index | |
| 3 | Frame | name | |
| 4 | WebTable | name | |
| 5 | WebEdit | name | Set |
| 6 | WebButton | text | Click |
| 7 | WebList | name | Select“#index” |
| 8 | Link | text | Click |
| 9 | Image | name | |
| 10 | WebCheckBox | name | Set “on/off” |
| 11 | WebRadioGroup | name | Select“#index“ |
| 12 | WebElement | innertext/html | tag |
在对象仓库中加入新对象
Resources->Object Repository
->Add Objects
Active Screen 的对象->右击,快捷菜单View/Add Object
语法自己主动完毕
tools--->view options-->auto-expand vbscript syntax
凝视:ctrl+m, ctrl+shift+m
QTP描写叙述性编程
关闭浏览器进程 systemutil.CloseProcessByName("iexplore.exe")
打开浏览器 systemutil.Run "C:\ProgramFiles\InternetExplorer\iexplore.exe","http://192.168.93.10:8080/mtours/servlet/com.mercurytours.servlet.WelcomeServlet"
“浏览器路径” ,“訪问连接”
打开程序 systemutil.Run "C:\calc.exe" (计算器)
实例Browser(“creationTime:=0”).Page(“index:=0”).WebEdit(“name:=amount”).Set “1000”
在第一个被创建的IE窗体,查找name属性为amount的输入框,输入数据1000
Browser(“creationTime:=1”).Page(“index:=0”).WebButton(“text:=保存”).Click
在第二个被创建的IE窗体,查找button。该button上显示的文字是“保存”,点击该button
Window("计算器").WinButton("text:=C","Index:=1").Click
QTP对象属性
对象识别的优先级:强制属性→辅助属性→智能标识→顺序标识
顺序模式:Order Identifier有3中策略
用途:多个同名的
Index(代码):源码中的显示顺序
Location(出现):界面中的顺序
CreatTime(打开):Browser对象有。该浏览器打开的顺序
QTP获取属性值函数
GetToProperty:录制时的对象属性的值test object
GetTOProperties:录制时的对象属性集test object
GetROProperty:执行时对象属性的值run object
对象库的维护
对象库的保存【File】→【Export Local Object….】
对象库的合并 【Resources】→【Object Repository Manager】【Tools】→【Object Repository Merge Tool】
对象库的共享引用 【Resources】→【Associate Repositories】
QTP,自己主动化測试学习笔记,六月九号的更多相关文章
- Selenium2 Python 自己主动化測试实战学习笔记(五)
7.1 自己主动化測试用例 无论是功能測试.性能測试和自己主动化測试时都须要编写測试用例,測试用例的好坏能准确的体现了測试人员的经验.能力以及对项目的深度理解. 7.1.1 手工測试用例与自己主动化測 ...
- 基于QTP的自己主动化測试框架介绍
继前面用了七章介绍了基于QTP的自己主动化測试框架,以下再用几个视频再补充一下. 视频一:基本框架特点介绍说明 .框架的特点从正反两面进行了分析以及主要思想 http://v. ...
- Android自己主动化測试之Monkeyrunner用法及实例
眼下android SDK里自带的现成的測试工具有monkey 和 monkeyrunner两个.大家别看这俩兄弟名字相像,但事实上是完全然全不同的两个工具,应用在不同的測试领域.总的来说,monke ...
- 带有机器人框架的.NET自己主动化測试
Clayton Neal在软件測试和质量保证方面有超过13年的经验,当中有八年的Windows, web,和移动应用程序的測试自己主动化经验.他在測试领域的全部等级都工作过.近期他在Bloomberg ...
- Robot Framework自己主动化測试框架之我见
一些自己主动化測试现状: 盲目的去做自己主动化,终于以失败告终. 觉得是能提高效率的事情.却推广不下去: 事实上上述问题产生的原因是: 自己主动化測试案例稳定性不高,可维护性比較差: 自己主动化測试工 ...
- Mock+Proxy在SDK项目的自己主动化測试实战
项目背景 广告SDK项目是为应用程序APP开发者提供移动广告平台接入的API程序集合,其形态就是一个植入宿主APP的jar包.提供的功能主要有以下几点: - 为APP请求广告内容 - 用户行为打点 - ...
- Android自己主动化測试解决方式
如今,已经有大量的Android自己主动化測试架构或工具可供我们使用,当中包含:Activity Instrumentation, MonkeyRunner, Robotium, 以及Robolect ...
- MAC中在eclipse luna上搭建移动平台自己主动化測试框架(UIAutomator/Appium/Robotium/MonkeyRunner)关键点记录
这几天由于原来在用的hp laptop的电池坏掉了,机器一不小心就断电.所以仅仅能花时间在自己的mackbook pro上又一次搭建整套环境.大家都知道搭建好开发环境是个非常琐碎须要耐心的事情,特别是 ...
- Android Monkey自己主动化測试
前言 假设你做Android开发,还没有使用过Monkey进行測试,那么今天看到这篇文章,希望能解决你Android測试中的一些问题.起码能帮你省点測试的时间而且发现很多其它的问题. Monkey简单 ...
随机推荐
- 关于提BUG的一点思考以及工作中总结的规范
在测试的工作中,提BUG是日常工作. 以前自己为了省事,省时,仅仅是截图,在图片上注明一下问题,就放到BUG库中了. 现在发现这样会造成开发的时间的浪费,增加了沟通成本. 对于BUG,当发现了异常时, ...
- python:异常处理及程序调试
1.异常概述 在程序运行过程中,经常会遇到各种各样的错误.这些错误统称为“异常”,在这些一场中有的是由于开发者将关键词写错导致,这类错误产生的是SyntaxError.invalid syntax(无 ...
- 《代码大全2》读书笔记 Week4
<代码大全2>第8章:防御式编程 防御式编程的主要思想是子程序应该不因为非法的输入值被破坏,就好比开车时的防御式驾驶:你无法预估其他司机将会做什么,但你要采取措施保证当他人做出危险动作时自 ...
- tty - 显示连接标准输入的终端的文件名
总览 (SYNOPSIS) tty [OPTION]... 描述 (DESCRIPTION) 显示 连接 标准输入 的 终端 的 文件名. -s, --silent, --quiet 什么 都 不显示 ...
- libevent使用IOCP网络模型的示例
这段时间抽空学习了一下强大的网络库libevent,其使用标准C语言编写,支持Windows.Linux.Mac等等主流操作系统,早期版本不支持Windows的IOCP,最新版本已经添加上了,在网上找 ...
- elementUI+JS实现全选与反选
在实际项目开发过程中,遇到的需求,需要实现全选以及取消全选等功能,主要使用ElementUI + JS来实现,具体代码如下: <!DOCTYPE html> <html lang=& ...
- 【SGU194】Reactor Cooling
题目大意 给定一个无源无汇的网络,边的容量有上下界限制,试构造一个合理的流量. 题目分析 求无源汇上下界的可行流模板题. ①增加一个附加源和汇\(S,T\). ②把每个节点的\(\sum b_{u,i ...
- python中模块和包的概念
1.模块 一个.py文件就是一个模块.这个文件的名字是:模块名.py.由此可见在python中,文件名和模块名的差别只是有没有后缀.有后缀是文件名,没有后缀是模块名. 每个文件(每个模块)都是一个独立 ...
- vscode编程nodejs初始安装
nodejs官网 http://nodejs.cn/ 1.安装nodejs,记得安装时勾选配置路径 在cmd中输入node,进去node环境即为安装成功. 2.安装vscode,并安装插件node e ...
- H5调用腾讯地图
获取当前定位的经纬度并在容器内显示当前位置 (安卓上的位置有点偏差) 在vue的index.html中需要引用 template <div id="container" st ...