首页 测试 工具 查看内容

QTP User-Defined Function 学习经验汇总

2014-8-5 23:27| 发布者: tianzc| 查看: 363| 评论: 0

摘要: 1. 可以通过Function Definition Generator方便的定制自定义函数(Function) 2. Built-in Function优先级高于User-Defined Function。因此若存在同名的话,QTP会优先调用内置的Function 3. 通过RegisterUserFunc可 ...
        1. 可以通过Function Definition Generator方便的定制自定义函数(Function)
        2. Built-in Function优先级高于User-Defined Function。因此若存在同名的话,QTP会优先调用内置的Function
        3. 通过RegisterUserFunc可以将自定义的函数注册为特定对象的方法,甚至可以覆盖原有对象的方法(Method)。通过UnRegisterUserFunc取消注册
        注册方式:RegisterUserFunc TOClass, MethodName, FunctionName, True
        反注册方式:UnRegisterUserFunc TOClass, MethodName
        4. 定义在Action中的Function以及注册的Method只能在当前Action中使用,若需要供全局使用则定义到Function Library中
        5. 如果Method在Action中注册并且被其他Action调用时,该Method定义也适用于调用Action(Calling Action)。但如果Function定义在被调用Action中(Called Action),则Calling Action会因为找不到Function定义而失败。这种情况的话,需要将Function 定义在Function Library中
        6. QTP在测试执行前会清除所有的Method Register
        7. 默认情况下,User-Defined Function的运行结果不会出现在Test Result中,可以自己用Reporter.ReportEvent添加log
        8. QTP在打开Test时加载了关联的Function Library,因此,若其他人或者你用其他编辑器修改了对应的Function Library,只有在QTP重新打开该Test后才生效
        9. QTP搜索Function的顺序是先Test在Function Library。另外,同名的Function存在于多个Function Library时,后一个被使用
        10. 对于同一个Method先后注册了两个不同的Function,后面的Method注册会覆盖前面的。当用UnRegisterUserFunc反注册时,会将该Method返回到原始状态,而不会回到前一个注册
        11. 在某Action中使用ExecuteFile后,该Function只能在当前Action中使用
        12. 对于存储在QC中的外部资源,如Function Library,QTP打开时为其创建了一个本地副本。因此若其他人修改了QC上的外部资源,或你使用其他编辑器进行修改时,该修改只有在QTP重新打开该Test才生效。但对于存储在本地的外部资源,不存在该问题
        13. 在Test Settings中设置了Default Function Library列表后,新建Test时这些Library即被集成到新创建的Test中。以后对Default Function Library列表的修改对已有Test不产生任何影响。

鲜花

握手

雷人

路过

鸡蛋

扫一扫关注最新动态

毒镜头:老镜头、摄影器材资料库、老镜头样片、摄影
爱评测 aipingce.com  
返回顶部