高效工作、快乐生活

发布新日志

  • [论坛] 在QTP中如何使用Class(类)

    songfun 发布于 2007-08-04 23:10:36Digest 3

    大家知道VB是面向对象的,其中Class(类)是一个“模板”,对象是由它而创建的。类中的代码描述了从该类创建的对象的特性 (attribute) 和行为。
    虽然Class(类)不是对象,但是它的确有定义其特性 (attribute) 的设计时属性 (property) 和定义其行为的事件。
    类里的数据,是相对于类实例(也就是,由类创建的每一对象)而独立存在的。
    也就是说,它存在于程序的存活期中;而类实例中的数据只存在于对象的存活期,它随对象的创建而创建,随对象的撤消而消失。
    在编程的时候使用Class正是符合了OO(面向对象封装)的编程原则,我们在使用QTP进行自动化测试编程的时候也要时刻牢记这一原则,进行脚本设计。
    然而,如何在QTP中使用Class呢,以下是本人写的一个在QTP中使用Class的例子,大家直接把它粘贴到QTP的Expert View中就能看到效果了:)


    '****************************************************************
    Call Test

    Class Tester

            Dim mvarTesterName,mvarAge,mvarGender       
           
            Sub Class_Initialize   '构造函数
                   MsgBox  "接下来,大家欢迎新同事的到来!"
            End Sub
           
            Sub Class_Terminate  '析构函数
                    If mvarGender Then
                        MsgBox "很遗憾," & mvarTesterName & "先生脱离了测试行业!"
                    Else
                        MsgBox "很遗憾," & mvarTesterName & "女士脱离了测试行业!"
                    End If
            End Sub

            Sub Test(ByVal ProjectName)
                    MsgBox mvarTesterName & "正在加班加点的测试" & ProjectName & "呢!"
            End Sub
           
            Sub Eat(ByVal food)
                    MsgBox mvarTesterName & "正在吃" & food & "呢,好爽啊!"
            End Sub
           
            Property Let Gender(ByVal vData)
                mvarGender = vData            
            End Property
           
            Property Get Gender()
                Gender = mvarGender
            End Property
           
            Property Let Age(ByVal vData)
                mvarAge = vData
            End Property
           
            Property Get Age()
                Age = mvarAge
            End Property
           
            Property Let TesterName(ByVal vData)
                mvarTesterName = vData
            End Property
           
            Property Get TesterName()
                TesterName = mvarTesterName
            End Property
       
    End Class



    Sub Test()
            Set sb = New Tester  '创建一个对象,对象名叫somebody,它是由Tester创建出来的
            sb.TesterName = "songfun"
            sb.Age = 29
            sb.Gender = True
            sb.Eat "HagenDaz"
            sb.Test "手机"
            If sb.Gender Then
                    MsgBox sb.TesterName & "先生年方" & sb.Age
       Else
                    MsgBox sb.TesterName & "女士芳龄" & sb.Age
            End If
            Set sb = Nothing
    End Sub
    '****************************************************************
xavier_007

xavier_007

目前从事gis行业导航相关测试; 熟悉语言c/cpp/vbs/lua/java 熟悉工具gtest/autoit/qtp/lr 良好英语和思维能力

数据统计

  • 访问量: 11399
  • 日志数: 18
  • 建立时间: 2008-11-26
  • 更新时间: 2012-11-21

RSS订阅

Open Toolbar