異なる OS とテスト実行からレポートをレポート ポータルの同じ起動に送信する必要があります。これはどのように行うことができますか?
質問する
941 次
1 に答える
4
これが私のプロジェクトでどのように達成されるかです:
- CI サーバーは RP 起動を作成し、起動 ID をテスト バイナリの app.config に保存します。
- テスト バイナリは VM にコピーされ、そこで実行されます。
テストが開始されると、app.config に起動 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 の起動を閉じます。
于 2017-06-06T17:23:49.597 に答える