技术开发 频道

QTP中类的基本使用方法

  【IT168 技术文档】对于共同开发的自动化测试项目,实例方便的调用是很重要的。QTP采用的是vbscript脚本,所以也支持类,但是应为vbs并不支持类的继承,所以只能算作一种“拟类”。采用类对脚本进行封装,有很多好处,对于测试执行人员,可以通过项目情况对封装的类进行调用,而并不必关心类实现的细节。

  此处对QTP类的使用进行一些总结。

  '类名称

  Class TestCase

  Private DataFile

  ' ----用例预置条件

  Private Function CasePrepare()

  End Function

  ' ----测试数据输入

  Public Function CaseData(byval RowNum)

  End Function

  ' ----测试执行

  Public Function CaseRun()

  End Function

  ' ----测试结果检查

  Public Function CaseCheck()

  End Function

  '获取测试用例号

  Public Property Get CaseID()

  CaseID = "TestCase_0001"

  End Property

  '获取测试用例名称

  Public Property Get CaseName()

  CaseName = "用户登录"

  End Property

  '----构造函数----

  Private Sub Class_Initialize()

  DataFile = "C:\autotest\data.xls"

  Call CasePrepare()

  End Sub

  '----解构函数----

  Private Sub Class_Terminate()

  End Sub

  End Class

  其中Class_initialize为构造函数,类初始化时调用,此处预设了数据文件,并在此处调用了用例预置函数。

  Class_Terminate为解构函数,一般用于释放类执行过程种占用的内存等。

  Property Get用于获取类的属性,此处获取该测试用例类的ID,和名称属性。

  模拟测试用例,类中包含了测试用例的几个部分:

  CasePrepare:测试预置条件,如测试用户登录,此处可以判断登录界面是否已经显示;

  Casedata:测试数据准备,如测试用户登录,此处可以载入登录用户、登录密码等数据;

  CaseRun:测试执行,如测试用户登录,此处可以执行输入验证码,点击登录按钮等操作;

  CaseCheck:执行结果检查,如测试用户登录,此处可以对登录结果进行检查,如页面是否正确跳转,如用户、密码不对,是否正确显示提示信息等。

  具体在QTP中的使用如下:

  Dim CaseLogin

  Set CaseLogin = New TestCase

  CaseLogin.CaseData 2‘载入数据文件中的第2行数据作为测试输入

  CaseLogin.CaseRun

  If CaseLogin.CaseCheck Then

  Case_LogInfo “测试用例”CaseLogin. CaseID & “测试通过!”,MicPass

  Else

  Case_LogError “测试用例”CaseLogin. CaseID & “测试失败!”,MicFail

  End If

0
相关文章