QTP学习笔记

1.QTP开启浏览器:

‘SystemUtil.Run"C:\Program Files\Internet Explorer\IEXPLORE.EXE","http://www.baidu.com"
SystemUtil.Run”http://www.baidu.com

C:\Windows\system32\calc.exe

2.调用Vbs文件

Executefile ”C:\test.vbs”

3.VBS相关

Byref:按引用传参

Redim:重新申明动态数组

Const

4.读取DataTable

a.不支持xlsx文件

b.导入DataTable.Import ExcelFileName

获取行数:DataTable.GetRowCount()

设置当前行DataTable.SetCurrentRow(index)

获取当前行对应的值DataTable.Value("Step","Global")

5.Function与Sub

Function name()

Sub name()

Sub无返回值,Function带返回值

6.文件操作

Function ReportFileStatus(filespec)

Dim fso, msg

Set fso = CreateObject("Scripting.FileSystemObject")

If (fso.FileExists(filespec)) Then

msg = filespec & " exists."

Else

msg = filespec & " doesn‘t exist."

End If

ReportFileStatus = msg

End Function

A.  创建excel文件

Set ExcelApp=CreateObject("excel.application")

     ExcelApp.Workbooks.Add()
        ExcelApp.ActiveWorkbook.SaveAs(FileName)

ExcelApp.Quit

Set ExcelApp = Nothing    
        SystemUtil.CloseProcessByName "Excel.exe"

B.  判断文件是否存在

Set fso=createobject("scripting.filesystemobject")

fso.fileexists(FileName)

C.  打开Excel文件

Set ExcelApp=CreateObject("excel.application")
 Set ExcelBook=ExcelApp.Workbooks.Open(FileName)
 Set ExcelSheet=ExcelBook.Sheets.Add

修改sheet的名称
 ExcelSheet.Name="TestResult"

 ‘release the excel object        

 ExcelBook.Save  

 ExcelBook.Close  

  ExcelApp.Quit  
  Set ExcelBook = Nothing  

  Set ExcelApp = Nothing

7.Byref &Byval

Byref:按地址传递,值可变

Byval:按值传递,值不可变

8.检查文本信息是否存在

LoginErrMsg=Dialog("Flight Reservations").GetVisibleText

Instr(1,LoginErrMsg,Steps.ExpectedResult)>0

9.中文字符处理

Qtp执行vbs脚本时,中文字符不支持时,将vbs改为ANSI编码后,修改中文

原因:qtp使用的编码方式为ANSI编码方式

QTP注释

注释选中内容Ctr+M

取消注释选中内容Ctr+shift+M

问题:

1.       Action中调用vbs时需要将vbs文件添加到Function Lib中,方法:settings/Resources,添加文件

2.       使用 Executefile filename(绝对路径,或相对路径)

3.       VBS调试较麻烦,将VBS放到action中进行调试

对象库的调用

获取输出结果

添加检查点

自动化框架

Environment

Libraries

Object Repositories

Setup Scripts

Tests

Data

QTP相关资料

http://www.cnblogs.com/testware/archive/2010/04/16/1713555.html

时间: 2024-10-19 11:57:22

QTP学习笔记的相关文章

QTP学习笔记1

QTP中获取当前路径 实属转帖,方便以后查找~ QTP9.2版本,以下内容适合QTP和vbs. 路径一:QTP的测试当前路径 environment("TestDir") 使用environment("TestDir")能获取当前测试的绝对路径,不包括最后的"\" 方法: Path = environment("TestDir") 路径二:QTP安装目录下bin目录的路径 WshShell.CurrentDirectory (

QTP,自动化测试学习笔记,六月九号

测试自动化实现的两个难点 设计--功能分解 实现--对象的识别 测试自动化实现的两个难点-功能分解 清晰画出业务流程图 根据业务流程分解业务功能,可以被复用的功能也要被分解出来. 按照路径覆盖的思想,组织测试用例 测试自动化实现的两个难点-对象识别 创建测试    获取被操作对象的属性信息 使用唯一的对象名在对象仓库中记录该对象. 标识关键属性信息 在脚本中记录对象名称和相应的动作. 运行测试 从脚本中获得对象名称. 在对象仓库中定位对象,并获取其关键属性. 根据关键属性信息在被测应用中定位对象

vector 学习笔记

vector 使用练习: /**************************************** * File Name: vector.cpp * Author: sky0917 * Created Time: 2014年04月27日 11:07:33 ****************************************/ #include <iostream> #include <vector> using namespace std; int main

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则 用了几天时间看了一下开源框架Caliburn.Micro 这是他源码的地址http://caliburnmicro.codeplex.com/ 文档也写的很详细,自己在看它的文档和代码时写了一些demo和笔记,还有它实现的原理记录一下 学习Caliburn.Micro要有MEF和MVVM的基础 先说一下他的命名规则和引导类 以后我会把Caliburn.Micro的 Actions IResult,IHandle ICondu

jQuery学习笔记(一):入门

jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操作如下: 1 document.getElementById('info').value = 'Hello World!'; 使用JQuery时获取DOM文本操作如下: 1 $('#info').val('Hello World!'); 嗯,可以看出,使用JQuery的优势之一是可以使代码更加简练,使开

[原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

Activiti 学习笔记记录(三)

上一篇:Activiti 学习笔记记录(二) 导读:上一篇学习了bpmn 画图的常用图形标记.那如何用它们组成一个可用文件呢? 我们知道 bpmn 其实是一个xml 文件

HTML&CSS基础学习笔记8-预格式文本

<pre>标签的主要作用是预格式化文本.被包围在 pre 标签中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. <pre>标签的一个常见应用就是用来表示计算机的源代码.当然你也可以在你需要在网页中预显示格式时使用它. 会使你的文本换行的标签(例如<h>.<p>)绝不能包含在 <pre> 所定义的块里.尽管有些浏览器会把段落结束标签解释为简单地换行,但是这种行为在所有浏览器上并不都是一样的. 更多学习内容,就在码芽网http://www.

java/android 设计模式学习笔记(14)---外观模式

这篇博客来介绍外观模式(Facade Pattern),外观模式也称为门面模式,它在开发过程中运用频率非常高,尤其是第三方 SDK 基本很大概率都会使用外观模式.通过一个外观类使得整个子系统只有一个统一的高层的接口,这样能够降低用户的使用成本,也对用户屏蔽了很多实现细节.当然,在我们的开发过程中,外观模式也是我们封装 API 的常用手段,例如网络模块.ImageLoader 模块等.其实我们在开发过程中可能已经使用过很多次外观模式,只是没有从理论层面去了解它. 转载请注明出处:http://bl