Generieren von Berichten mit C#

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard
Not for use with personal data

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:

  1. 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");
  2. 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.

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.