如何在QTP中检测测试报告/日志中的故障/错误

时间:2013-03-04 22:21:26

标签: report reporting automated-tests qtp

在QTP中,每当测试的关键部分通过或失败时,我都会经常向日志报告。我使用的方法是:Reporter.ReportEvent micPass, "Critical Area of Test", "Things went better than expected"

我想检测在完成测试时是否有任何错误记录到报告中。我正在看的错误不像Err.Raise InvalidCall;只要我调用micFail,就会出错。通过了解测试中是否(以及在何处)调用了micFail,我可以使用自定义函数自动将结果写入不同的区域。

是否可以创建一个查看默认报告的功能,以查看测试是否失败,如果是,是哪个区域?

1 个答案:

答案 0 :(得分:1)

您可以使用设置环境变量的自定义函数替换micFail,并在以后报告该环境变量。

自定义函数定义如下:

Function OnFail()
  Environment.Value("Status") = "FAIL"
  OnFail = micFail
End Function

因此,每次您通常使用micFail时,请使用OnFail

Reporter.ReportEvent OnFail, "Subject", "Description"

在测试结束时,检查环境变量并执行所需的操作:

In Environment.Value("Status") = "FAIL"
  ' ...
End If

或者,您可以创建一个替换Reporter.ReportEvent的函数(它将接受相同的参数并调用Reporter.ReportEvent)。在此函数中,您将检查状态参数并根据micFail执行其他逻辑。