检查当前 QTP 测试执行是否是交互式的,即不是从 QC 测试实验室启动的 QC 测试集执行的一部分,最有效的方法是什么?
大佬们知道什么好方法吗?WR 曾经有一个批处理运行标志,该标志可靠地为 IDE 内的所有执行清除。也许QTP有这样的东西,我忽略了它?
首先,我想到了看OnError
属性:
Set qtApp = getObject("","QuickTest.Application")
qtApp.Test.Settings.Run.OnError
现在返回以下可能值之一:“Dialog”、“NextIteration”、“Stop”或“NextStep”。
这将允许我查看OnError
设置,当执行是测试集的一部分时,它可能是 <> "Dialog" 和 <> "Stop",但是:
- 我设法在所有 QTP 测试中避免使用自动化接口,这将是我的第一个例外(早期的 QTP 版本感到困惑并启动了第二个 QTP 实例,产生了很多问题......)
- 测试人员可能会在 QTP IDE 中执行“交互式”运行,并将此设置设置为“NextStep”或“NextIteration”,然后我会在我的代码中误解它。
- 它不起作用,即使没有出现对话(由于从 QC 测试集执行),返回的值是“对话”。哦!