Возможность отправлять отчеты за один запуск в ReportPortal для .net (Specflow)

У меня есть необходимость отправлять отчеты из разных ОС и тестовые прогоны на один и тот же запуск в портале отчетов. Как это можно сделать?


person Dzmitry Humianiuk    schedule 06.06.2017    source источник


Ответы (1)


Вот как это реализовано в моем проекте:

  1. Сервер CI создает запуск RP и сохраняет идентификатор запуска в app.config тестовых двоичных файлов.
  2. Тестовые двоичные файлы копируются на виртуальные машины и запускаются там.
  3. Когда тесты запускаются, они видят, что в 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;
        }
    }
    
  4. Когда все тесты пройдены, CI-сервер закрывает запуск RP.

person Alex B    schedule 06.06.2017
comment
При использовании ReportPortal.SpecFlow последней версии NuGet (v3.0.2) Bridge больше не существует. есть идеи, что эквивалентно? - person itsho; 14.12.2020
comment
Привет @itsho: У тебя есть ответ? У меня такой же вопрос. - person Quinn; 22.07.2021
comment
comment
@itsho: Спасибо. Но это не работает в моем сценарии, так как вообще не создает никакого запуска. - person Quinn; 25.07.2021