Generieren von Berichten mit C#
Diese Integration erzeugt Ergebnisse in einem mit dem axe DevTools reporter kompatiblen Format.
Reporterkompatibles JSON erstellen
AxeSelenium.Analyze
gibt eine
Objekt in der richtigen Form zur Verwendung mit dem axe DevTools-Reporter. Es kann leicht verwendet werden
Konvertiert in einen JSON-String über die JsonConvert.SerializeObject
Methode des
JSON.NET
JSON-Konvertierungsbibliothek.
Hier ist ein Beispiel, bei dem wir eine Seite analysieren und die Ergebnisse in einer Datei speichern:
var axe = new AxeSelenium(driver);
var results = axe.Analyze();
var jsonResults = JsonConvert.SerializeObject(results, Formatting.Indented);
File.WriteAllText("myResults.json", jsonResults);
Konfigurieren des Berichts
Die Konfiguration der Berichtsmetadaten erfolgt über ReportConfiguration
Klasse. Prüfen Sie den Link, um die API anzuzeigen.
Sobald eine ReportConfiguration
Befindet sich das Objekt im gewünschten Zustand, kann es auf zwei Arten auf einen Scan angewendet werden:
-
Es kann auf einen einzelnen Scan angewendet werden, indem es über [Konstruktorargumente] an ein einzelnes
AxeSelenium
Objekt gebunden wird.(cs-api#axeseleniumopenqaseleniumremoteremotewebdriver-reportconfiguration-string)var reportConfig = ReportConfiguration.GetDefault().TestSuiteName("my suite").UIState("some state"); var axe = new AxeSelenium(driver, reportConfig); var results = axe.Analyze(); Debug.Assert(results.Name == "my suite"); Debug.Assert(results.Id = "some state");
-
Es kann auf alle Scans angewendet werden, die nicht einzeln überschrieben werden, indem eine Instanz von
ReportConfiguration
als Standard festgelegt wird.ReportConfiguration.GetDefault().TestSuiteName("my suite").SetAsDefault() var axe = new AxeSelenium(driver); var results = axe.Analyze(); Debug.Assert(results.Name == "my suite");
Sie können die [ReportConfiguration
] erhalten.(cs-api#class-dequeaxedevtoolsseleniumreportconfiguration)
Instanz, die derzeit als Standard dient, indem [ReportConfiguration.GetDefault()
] aufgerufen wird(cs-api#static-reportconfiguration-getdefault).
Beispiel für Generierungscode
Axe DevTools bietet ein integriertes Tool zum automatischen Erstellen von Berichten zur Benutzersicht oder zum Exportieren.
Das folgende Beispiel richtet eine globale Berichtskonfiguration mit einer Klasse ein, die eine Methode zum Erstellen einer gerenderten Datei mit Berichtsergebnissen enthält. AxeReporting
CreateResultsOutput
JSON
Nach Abschluss der Ausführung der Methode wird die Methode ausgeführt, um die axe DevTools Reporter-Binärdatei zu starten und dabei als Eingabe zu verwenden, um für jede Datei eine entsprechende benutzerlesbare HTML-Datei zu erstellen. CreateResultsOutput
LogResults
axe-TestCaseName.json
JSON
Für diese Berichte stehen drei Formate zur Verfügung. HTML eignet sich am besten für die Benutzeranzeige in lokalen Testumgebungen. Für CI-Umgebungen ist eine JUnit-XML-Option verfügbar. Das Ausgabeformat ist CSV, das den Export in zahlreiche andere Tools ermöglicht.
using System.IO;
using Newtonsoft.Json;
using System.Diagnostics;
using Deque.AxeDevtools.Selenium.Results;
namespace test
{
public class AxeReporting
{
public static void CreateResultsOutput(ReportResults results, string TestCaseName)
{
var jsonResults = JsonConvert.SerializeObject(results, Formatting.Indented);
File.WriteAllText("../../../reports/axe-" + TestCaseName + ".json", jsonResults);
}
public static void LogResults()
{
ProcessStartInfo startInfo = new ProcessStartInfo() { FileName = "../../../resources/repoter-cli-win.exe", Arguments = "../../../reports ../../../reports/a11y-reports --format html", };
Process proc = new Process() { StartInfo = startInfo, };
proc.Start();
}
}
}
Siehe auch
– Hochladen von JSON-Zugänglichkeitsergebnissen in axe Reports beschreibt, wie Sie Ihre Ergebnisse in axe Reports hochladen.
- Erhalten eines API-Schlüssels für axe Reports erklärt, wie Sie einen API-Schlüssel erhalten, um mit der Verwendung von axe Reports zu beginnen.
– Berichte erstellen und filtern zeigt, wie Sie aus Ihren JSON-Zugänglichkeitsergebnissen Zugänglichkeitsberichte im CSV-, XML- oder HTML-Format erstellen können. Mit diesem Tool können Sie Ihre Ausgabe auch nach Schweregrad filtern. – So werden JSON-Ergebnisse auf der Festplatte gespeichert beschreibt die Dateibenennungskonventionen für JSON-Zugänglichkeitsergebnisse.