2017-06-06 19 views

回答

2

这里是它是如何在我的项目完成:

  1. CI服务器创建一个RP推出并保存推出id来的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推出。