检查当前 QTP 测试执行是否是交互式的(即不是从 QC 测试实验室启动的 QC 测试集执行的一部分)的最有效方法是什么?
你们知道一个很酷的方法吗? WR 曾经有一个批处理运行标志,对于 IDE 内的所有执行,该标志都会被可靠地清除。也许QTP有类似的东西,而我忽略了?
首先,我想到了看看OnError
财产:
Set qtApp = getObject("","QuickTest.Application")
qtApp.Test.Settings.Run.OnError
现在返回以下可能值之一:
“对话框”、“NextIteration”、“停止”或“NextStep”。
这将使我能够查看OnError
设置,当执行是测试集的一部分时,它可能是 “Dialog”和 “Stop”,但是:
- 我设法在所有 QTP 测试中避免使用自动化接口,这将是我的第一个例外(早期的 QTP 版本感到困惑并启动了第二个 QTP 实例,产生了很多问题......)
- 测试人员可能会在 QTP IDE 中执行“交互式”运行,并将此设置设置为“NextStep”或“NextIteration”,然后我会在代码中误解它。
- 即使没有出现对话框(由于从 QC 测试集执行),它也不起作用,返回的值是“Dialog”。卫生部!
无需转到自动化对象,它暴露在Setting
object.
If Setting("IsInTestDirectorTest") Then
Print "Run from QC"
Else
Print "Not run from QC"
End If
请注意,TestDirector (TD) 是 QualityCenter (QC) 的历史名称。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)