如何使用 C# 自动将 QTP 结果导出为 PDF

本文关键字:结果 PDF QTP 何使用 | 更新日期: 2023-09-27 18:36:47

我正在编写一个C#程序来运行QTP。

现在我的程序可以自动触发 QTP 并将结果发送到我的邮箱。但是这个结果是HTML,我发现QTP可以导出PDF结果。

所以,这是我的代码。

qtpAutoReport = qtpApp.Options.Run.AutoExportReportConfig;
qtpAutoReport.AutoExportResults = true;
qtpAutoReport.StepDetailsReport = true;
qtpAutoReport.DataTableReport = false;
qtpAutoReport.LogTrackingReport = false;
qtpAutoReport.ScreenRecorderReport = false;
qtpAutoReport.SystemMonitorReport = false;
qtpAutoReport.StepDetailsReportFormat = "Short";
qtpAutoReport.ExportLocation = AutoExportPath;
qtpAutoReport.ExportForFailedRunsOnly = false;
qtpAutoReport.StepDetailsReportType = "PDF";

当我使用此代码时qtpAutoReport.StepDetailsReportType = "HTML";我的程序可以成功运行,我可以在我的磁盘上找到这个 HTML 文件。

但是,当我使用此代码时qtpAutoReport.StepDetailsReportType = "PDF"; QTP 测试结束后,我的磁盘上没有任何文件。所以我的问题是为什么当我将 StepDetailsReportType 设置为"PDF"时 QTP 无法导出结果?

如何使用 C# 自动将 QTP 结果导出为 PDF

UFT 似乎确实存在问题,我找到了一种适用于 GUI 测试(vbscript)的方法,尝试使用服务测试 (c#)。

所有选项都与您的示例相同,但增加了一个:

uftObject.Options.Run.ViewResults = True

这会告知 UFT 您希望在完成后查看结果。没有这个标志,我没有得到PDF结果,文件正在等待导出路径。 Option Explicit Dim uftObject, qtResultsOpt
Set uftObject=CreateObject("Quicktest.application") uftObject.Launch uftObject.Visible = True Set qtResultsOpt = uftObject.Options.Run.AutoExportReportConfig Dim AutoExportPath AutoExportPath = "C:'Users'paxic'Desktop'stackoverflow'results" qtResultsOpt.AutoExportResults = true qtResultsOpt.StepDetailsReport = true qtResultsOpt.DataTableReport = false qtResultsOpt.LogTrackingReport = false qtResultsOpt.ScreenRecorderReport = false qtResultsOpt.SystemMonitorReport = false qtResultsOpt.StepDetailsReportFormat = "Short" qtResultsOpt.ExportLocation = AutoExportPath qtResultsOpt.ExportForFailedRunsOnly = false qtResultsOpt.StepDetailsReportType = "PDF" uftObject.Open "C:'Users'JMorley'Desktop'stackoverflow'ExampleOne" qtResultsOpt.AutoExportResults = True uftObject.Options.Run.ViewResults = True uftObject.Test.Run