Untitled
unknown
plain_text
9 months ago
1.8 kB
9
Indexable
using System;
using TechTalk.SpecFlow;
using Allure.Commons;
using NUnit.Framework;
namespace SAPAutomation.steps
{
[Binding]
public class Hooks
{
private readonly ScenarioContext _scenarioContext;
private static readonly AllureLifecycle allure = AllureLifecycle.Instance;
public Hooks(ScenarioContext scenarioContext)
{
_scenarioContext = scenarioContext;
}
[BeforeScenario]
public void BeforeScenario()
{
Console.WriteLine($"[{DateTime.Now}] Running BeforeScenario hook...");
allure.StartTestCase(new TestResult
{
Name = _scenarioContext.ScenarioInfo.Title,
Start = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
});
}
[AfterScenario]
public void AfterScenario()
{
Console.WriteLine($"[{DateTime.Now}] Running AfterScenario hook...");
try
{
allure.UpdateTestCase(x =>
{
x.status = Status.passed;
x.stop = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
});
}
catch (Exception ex)
{
Console.WriteLine($"[{DateTime.Now}] Error Closing SAP: {ex.Message}");
allure.UpdateTestCase(x =>
{
x.status = Status.failed;
x.statusDetails = new StatusDetails { message = ex.Message };
x.stop = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
});
}
finally
{
allure.StopTestCase();
allure.WriteTestCase();
}
}
}
}
Editor is loading...
Leave a Comment