Nunit测试报告不会发布附件

时间:2017-08-30 07:29:14

标签: c# jenkins nunit specflow nunit-3.0

我是C#,Specflow和Nunit的新手。目前,我正在使用Specflow和Nunit来自动执行一些UI测试。

目标:我想为失败的测试用例附上屏幕截图。

以下是截屏的代码

[AfterScenario]
    public void AfterScenario()
    {
        if (ScenarioContext.Current.TestError != null)
        {
            var screenShotPath = AppDomain.CurrentDomain.BaseDirectory + "\\TestResults\\ScreenShots";
            Directory.CreateDirectory(screenShotPath);

            if (BrowserSession != null)
            {
                BrowserSession.SaveScreenshot(Path.Combine(screenShotPath, ScenarioContext.Current.ScenarioInfo.Title + ".jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                TestContext.AddTestAttachment(Path.Combine(screenShotPath, ScenarioContext.Current.ScenarioInfo.Title + ".jpg"));
            }
        }
    }

在詹金斯的工作中,

  • 我使用命令行nunit3-console.exe来执行测试并生成Testresults.xml。

  • 在Post构建操作中,我使用nunit插件发布了Nunit报告。

除了"附件"一切都很好。即使"附件"包含失败的屏幕截图也不会发布标签存在于xml中。

以下是生成的xml

的快照
</assertion>
        </assertions>
        <attachments>
          <attachment>
            <filePath>E:\jekinsJob\autotest\TestSolution\bin\Debug\TestResults\ScreenShots\registrationlink.jpg</filePath>
          </attachment>
          <attachment>
            <filePath>E:\jekinsJob\autotest\TestSolution\bin\Debug\TestResults\ScreenShots\guest_registration.jpg</filePath>
          </attachment>
        </attachments>
      </test-case>

任何人都可以帮我解决这些问题。我只想在发布Nunit结果时附加屏幕截图链接。

1 个答案:

答案 0 :(得分:0)

NUnit测试附件功能相对较新。 Jenkins插件目前没有任何支持来处理它。

您可以raise an issuemake a pull request