代码之家  ›  专栏  ›  技术社区  ›  TheBlastOne

由QTP恢复方案触发的函数必须位于它们自己的库中?

  •  2
  • TheBlastOne  · 技术社区  · 14 年前

    我在函数库中插入了一个函数(在测试的资源设置中引用)。看起来是这样的:

    Public Function NWRecoverOnRunStep (AObject,AMethodName,AArguments,AResult)
      Print "NWRecoverOnStep MethodName='" & AMethodName & "' Result=" & AResult
    End Function
    

    (显然,我正处于探索阶段;)

    当我现在运行测试时,QTP会在“库文件错误”下显示“blabla”,并在“详细信息”下显示:

    File: [QualityCenter\Resources] mylib.qfl
    
    line (1): 'Dim CaptchaCheckActive '.
    
    Description: Name redefined
    

    问: 这是不是因为库链接到我的测试两次,一次是因为它是我的“传统”函数库,另一次是因为它包含了我的恢复场景函数?

    备选方案Q: 恢复场景处理函数必须驻留在它们自己的函数库中,即与其他用户定义的函数分开,这是真的吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   TheBlastOne    14 年前

    虽然我找不到有关这方面的文献,但从经验上看,答案似乎是肯定的。包含处理程序的库不能包含在“资源,库”列表下。否则,库将被解析两次到同一个“命名空间”或作用域中,第一个声明/定义将产生重新定义错误。