測试自己主动化实现的两个难点
设计——功能分解

实现——对象的识别

測试自己主动化实现的两个难点—功能分解

清晰画出业务流程图
依据业务流程分解业务功能。能够被复用的功能也要被分解出来。
依照路径覆盖的思想。组织測试用例

測试自己主动化实现的两个难点—对象识别

创建測试    获取被操作对象的属性信息
使用唯一的对象名在对象仓库中记录该对象。
标识关键属性信息
在脚本中记录对象名称和对应的动作。

执行測试 

从脚本中获得对象名称。
在对象仓库中定位对象。并获取其关键属性。
依据关键属性信息在被測应用中定位对象。

依据脚本中录入的动作执行对应的操作。

測试对象管理机制  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,自己主动化測试学习笔记,六月九号的更多相关文章

  1. Selenium2 Python 自己主动化測试实战学习笔记(五)

    7.1 自己主动化測试用例 无论是功能測试.性能測试和自己主动化測试时都须要编写測试用例,測试用例的好坏能准确的体现了測试人员的经验.能力以及对项目的深度理解. 7.1.1 手工測试用例与自己主动化測 ...

  2. 基于QTP的自己主动化測试框架介绍

    继前面用了七章介绍了基于QTP的自己主动化測试框架,以下再用几个视频再补充一下.        视频一:基本框架特点介绍说明 .框架的特点从正反两面进行了分析以及主要思想      http://v. ...

  3. Android自己主动化測试之Monkeyrunner用法及实例

    眼下android SDK里自带的现成的測试工具有monkey 和 monkeyrunner两个.大家别看这俩兄弟名字相像,但事实上是完全然全不同的两个工具,应用在不同的測试领域.总的来说,monke ...

  4. 带有机器人框架的.NET自己主动化測试

    Clayton Neal在软件測试和质量保证方面有超过13年的经验,当中有八年的Windows, web,和移动应用程序的測试自己主动化经验.他在測试领域的全部等级都工作过.近期他在Bloomberg ...

  5. Robot Framework自己主动化測试框架之我见

    一些自己主动化測试现状: 盲目的去做自己主动化,终于以失败告终. 觉得是能提高效率的事情.却推广不下去: 事实上上述问题产生的原因是: 自己主动化測试案例稳定性不高,可维护性比較差: 自己主动化測试工 ...

  6. Mock+Proxy在SDK项目的自己主动化測试实战

    项目背景 广告SDK项目是为应用程序APP开发者提供移动广告平台接入的API程序集合,其形态就是一个植入宿主APP的jar包.提供的功能主要有以下几点: - 为APP请求广告内容 - 用户行为打点 - ...

  7. Android自己主动化測试解决方式

    如今,已经有大量的Android自己主动化測试架构或工具可供我们使用,当中包含:Activity Instrumentation, MonkeyRunner, Robotium, 以及Robolect ...

  8. MAC中在eclipse luna上搭建移动平台自己主动化測试框架(UIAutomator/Appium/Robotium/MonkeyRunner)关键点记录

    这几天由于原来在用的hp laptop的电池坏掉了,机器一不小心就断电.所以仅仅能花时间在自己的mackbook pro上又一次搭建整套环境.大家都知道搭建好开发环境是个非常琐碎须要耐心的事情,特别是 ...

  9. Android Monkey自己主动化測试

    前言 假设你做Android开发,还没有使用过Monkey进行測试,那么今天看到这篇文章,希望能解决你Android測试中的一些问题.起码能帮你省点測试的时间而且发现很多其它的问题. Monkey简单 ...

随机推荐

  1. debian 8 安装 codeblocks

    CodeBlocks优点: 1.所占资源少,对电脑硬件的要求低 2.开源软件,可以查看源代码,虽然我不会修改,但是如果我做一个IDE的话,我一定会参考这个伟大的软件的. 3.最重要的是,它完全跨了三大 ...

  2. jenkins的api操作

    jenkins-client 实现方式 jenkins-client 底层是使用 HttpClient HttpPost 发送post 请求实现的,是将 REST API 封装了一下 添加依赖 < ...

  3. Tomcat运行错误示例三

    Tomcat运行错误示例三 最近碰到tomcat启动的问题,如图: 以前也碰见过这种情况,这次写的时候忘记加return,所以跳出了错误,加上之后的效果,如图: 参考网址 参考网址

  4. IntelliJ快捷键记录

    1.自动补全返回类型及变量:Ctrl+Alt+V2.大小写转换:Ctrl+Shift+U3.get/set方法快捷键:Alt+Insert4. 查看类继承关系:Ctrl+H或者Ctrl+Shift+A ...

  5. [Flink原理介绍第四篇】:Flink的Checkpoint和Savepoint介绍

    原文:https://blog.csdn.net/hxcaifly/article/details/84673292 https://blog.csdn.net/zero__007/article/d ...

  6. Gerrit(0): Install and Config

    Install(Ubuntu 17.04): apt-get install default-jre daemon [nginx] #Other OS: install openjdk8-jre [n ...

  7. react组件中的方法?

    SetState 设置状态 ReplaceState 替换状态 setProps设置属性 replacerProps替换属性 forceUpdate 强制更新 findDOMNode获取DOM节点 i ...

  8. 如何在react中实现一个table切换?

    废话不说,直接贴代码,供新手参考 <!DOCTYPE html> export default class TabComponent extends Component { constru ...

  9. md详解和rd详解:一次性创建多个目录和多级子目录

    md 命令: 官方解释: E:\ABC>md /? 创建目录. MKDIR [drive:]path MD [drive:]path 如果命令扩展被启用,MKDIR 会如下改变: 如果需要,MK ...

  10. Java中的接口是怎么实现的

    接口 使用关键字interface来定义一个接口,和类的定义方法很相似分为接口声明和接口体. interface  Printable { final int MAX = 100; void add( ...