我需要将不同OS的报告和测试运行发送到报告门户的同一启动。如何完成?
这是我项目上的完成方式:
- CI服务器创建RP启动,并将启动ID保存到App.config。
- 测试二进制文件被复制到VM并在那里运行。
-
测试启动时,他们会看到app.config中有启动ID,并且不要创建新的启动 - 他们重复使用现有的ID。另外,他们一旦完成就不会关闭发布。
[BeforeTestRun(Order = -30000)] public static void BeforeTestRunPart() { ReportPortalAddin.BeforeRunStarted += ReportPortalAddin_BeforeRunStarted; ReportPortalAddin.BeforeRunFinished += ReportPortalAddin_BeforeRunFinished; } public static void ReportPortalAddin_BeforeRunStarted(object sender, RunStartedEventArgs e) { var launchId = SettingsManager.CommonSettings.ReportPortalLaunchId; if (launchId.IsNullOrEmpty() == false) { e.Canceled = true; Bridge.Context.LaunchId = launchId; } } public static void ReportPortalAddin_BeforeRunFinished(object sender, RunFinishedEventArgs e) { var launchId = SettingsManager.CommonSettings.ReportPortalLaunchId; if (launchId.IsNullOrEmpty() == false) { e.Canceled = true; } }
-
运行所有测试时,CI服务器关闭RP启动。