Haftungsausschluss: Ich bin ein Kodier-Neuling, der bei der Arbeit lernt.SpecFlow-Ergebnisse an TestRail senden
Ich habe ein Specflow-Projekt für die Verwendung von Gurke und C# Selenium eingerichtet und die TestRail-API heruntergeladen. Ich folgte einem bestehenden Beispiel, um ein Testergebnis am Ende eines Szenarios auf eine statische Test Rail ID zu setzen.
{ Gurock.TestRail.APIClient client = new Gurock.TestRail.APIClient ("https://testrail.placeholder.com/testrail"); client.User = "[email protected]"; // Schreiben Sie die E-Mail Ihres Benutzers hier client.Password = "password"; // Legen Sie das Passwort Ihres Benutzers hier
Dictionary<string, object> testResult = new Dictionary<string, object>();
if (null != ScenarioContext.Current.TestError)
{
testResult["status_id"] = "5"; //failed;
testResult["comment"] = ScenarioContext.Current.TestError.ToString();
}
else
{
testResult["status_id"] = "1"; //passed
}
client.SendPost("add_result_for_case/:run_id/:case_id"); //Here I am using a hardcoded test id.}
ich zu einem Szenario des obigen Code verknüpfen kann eine If unter Verwendung basierend auf dem Szenario Tag, z.B.
if (ScenarioContext.Current.ScenarioInfo.Tags.Contains("case_id"))
aber das Problem dabei ist, dass ich den obigen Code für jedes Szenario duplizieren würde, mit einem einzigartigen IF-Anweisung und Tag jedes Mal. Was ich möchte, ist eine Möglichkeit, das Posting zu paramatisieren, so dass ich nur einen Codeblock benötige, der es mir ermöglicht, die Ergebnisse jedes Szenarios an die korrekte statische TestRail-ID zu senden.