API-Tests 2018-11-12T12:31:02+00:00
Brandcrock-API-Testing-img

Anwendungsprogrammierschnittstelle (API) Testung

Brandcrock-Lines

Anwendungsprogrammierschnittstelle (API)

API steht für Application Programming Interface. API-Tests sind Softwaretests, die sowohl die Schnittstelle direkt als auch Teil des Integrationstests beinhalten. Es stellt sicher, dass die Schnittstelle ordnungsgemäß funktioniert, zuverlässig ist, gut funktioniert und während der Arbeit sicher bleibt.
API-Tests gelten als entscheidend für die Automatisierung von Tests, da APIs als primäre Schnittstelle zur Anwendungslogik dienen und weil Graphical User Interface Testing oder GUI Testing aufgrund der kurzen Release-Zyklen und häufigen Änderungen, die häufig bei Agile und DevOps verwendet werden, schwierig zu pflegen sind.

API-Tests beinhalten das Testen von APIs direkt und als Teil der End-to-End-Transaktionen, die während des Integrationstests durchgeführt werden. Diese Transaktionen umfassen mehrere Arten von Endpunkten. API-Tests werden durchgeführt on:

  • APIs, die das Entwicklungsteam erstellt.
  • APIs, die das Team innerhalb seiner Anwendung verbraucht, einschließlich APIs von Drittanbietern.

API-Tests bestimmen, ob APIs die richtige Antwort im erwarteten Format und in akzeptabler Zeit für eine Vielzahl von möglichen Anfragen liefern, richtig auf Ausfälle und unerwartete/extreme Eingaben reagieren und bei jedem Virus oder anderen Cyberangriff sicher bleiben.

Der API-Test:

Wie in der Softwareindustrie üblich, beinhaltet das API-Testen die folgenden Praktiken:

  • Unit Testing: Es testet die Funktionalität der einzelnen Operationen..
  • Lasttests: Es validiert Funktionalität und Leistung unter Last.
  • Funktionales Testen: Es überprüft die Funktionalität, indem es Komponententests als Bausteine für End-to-End-Tests verwendet, einschließlich Testfalldefinition, Ausführung, Validierung und Regressionstest.
  • Sicherheitstests: Enthält die Validierung von Authentifizierung, Verschlüsselung und Zugriffskontrolle..
  • Web UI Testing: Es wird im Rahmen von End-to-End-Integrationstests durchgeführt.
  • Interoperabilitätstests: Es überprüft die Konformität mit Web Service Interoperabilitätsprofilen.
  • WS*-Konformitätstest: Es überprüft die Einhaltung von WS-*-Standards wie WS-Addressing, WS-Policy, WS-Discovery, WS-Security, WS-Federation und WS-Trust.
  • Penetration Testing: Es testet ein Computersystem, Netzwerk oder eine Webanwendung, um Schwachstellen zu finden.
  • Runtime Error Detection: Es handelt sich um die Überwachung einer Anwendung, ihre Ausführung während automatisierter oder manueller Tests.
  • Fuzz Testing: Dies geschieht durch die gewaltsame Einführung massiver Mengen rein zufälliger Daten, genannt „Noise“ oder „Fuzz“, in das System, um einen erzwungenen Crash, Overflow oder ein anderes negatives Verhalten zu versuchen. Es testet die API an ihren absoluten Grenzen und dient als „Worst-Case-Szenario“.