Sehen Sie, welche API-Testlösung im GigaOm Radar Report am besten abgeschnitten hat. Holen Sie sich Ihren kostenlosen Analystenbericht >>

Sehen Sie, welche API-Testlösung im GigaOm Radar Report am besten abgeschnitten hat. Holen Sie sich Ihren kostenlosen Analystenbericht >>
Bei Systemtests wird das System als Ganzes getestet. Sobald alle Komponenten integriert sind, wird das gesamte System gründlich getestet, um sicherzustellen, dass es die angegebenen funktionalen, sicherheitsbezogenen und sonstigen nicht funktionalen Anforderungen erfüllt.
DO-178C spezifiziert sowohl Software- als auch Hardware/Software-Integrationstests. In Bezug auf den Softwareentwicklungsaspekt von Bordsystemen entspricht dies dem Konzept „Systemtests“ für die Zwecke hier. Es gibt viele weitere Aspekte von System- und Flugtests von Bordsystemen, die hier nicht behandelt werden.
Abschnitt 6.4.3, ein anforderungsbasierter Hardware-/Software-Integrationstest, konzentriert sich auf den Betrieb der Software in der Zielhardwareumgebung. Ziel ist die Validierung hochrangiger Anforderungen. Es ist auch wichtig, darauf hinzuweisen, dass nichtfunktionale Anforderungen getestet werden müssen. Abschnitt 6.4.2.1 erfordert Tests im Normalbereich, um den normalen Betrieb der Software nachzuweisen, während Abschnitt 6.4.2.2 Robustheitstestfälle erfordert. Dies sind Tests, die abnormale Datenbereiche verwenden, die außerhalb der erwarteten Werte für Eingaben liegen, um nachzuweisen, dass das System sie ohne Fehler verarbeiten kann.
Diese Art von Tests sicherheitskritischer Software wird von einem spezialisierten Testteam durchgeführt. Systemtests fallen in den Bereich der Black-Box-Tests. Daher sollten hierfür keine Kenntnisse über den inneren Aufbau des Codes oder der Logik erforderlich sein.
Ein wichtiger Unterschied beim Testen auf Systemebene besteht darin, dass das System in einer Umgebung getestet wird, die der Produktionsumgebung, in der die Anwendung bereitgestellt wird, nahe kommt. In dieser Phase werden bestimmte Sicherheitsfunktionen überprüft und systemweite Sicherheitstests durchgeführt.
Bordsysteme können mit größeren Systemen verbunden sein, die beispielsweise Status- und Flugdaten sammeln und analysieren. Jede Art von Kommunikationsbus oder -netzwerk muss auf Datenintegrität, Sicherheit und Vertraulichkeit getestet werden. Systemtests müssen diese Umgebungen für eine vollständige Validierung einschließen.
Anstatt die Systemqualität im Hinblick auf die Erfüllung der Anforderungen einzelner Komponenten zu betrachten, wird der Rahmen erweitert, um die Qualität der bereitgestellten Dienste zu berücksichtigen. Tests auf Dienstebene stellen sicher, dass nichtfunktionale Anforderungen erfüllt werden. Beispielsweise sind Leistung und Zuverlässigkeit auf Geräteebene oder während Software-Unit-Tests schwer zu beurteilen. Servicebasierte Tests können die Betriebsumgebung eines Geräts simulieren, um realistische Belastungen bereitzustellen.
Sicherheit ist bei luftgestützten Systemen ein wachsendes Problem. Cyberangriffe sind in modernen Systemen möglich und gehen wahrscheinlich vom Netzwerk selbst aus, indem sie die freigelegten APIs angreifen. Servicebasierte Tests können simulierte Umgebungen für robuste Sicherheitstests erstellen, entweder durch Fuzzing (zufällige und fehlerhafte Dateneingaben) oder Denial-of-Service-Angriffe.
Ein echtes Testlabor erfordert eine möglichst genaue physische Darstellung der Umgebung, in der ein System funktionieren soll. Selbst im modernsten Labor ist es schwierig, eine realistische Umgebung zu skalieren. Ein virtuelles Labor behebt dieses Problem.
Virtuelle Labore sind nicht mehr auf schwer zu findende (oder nicht vorhandene) Hardware angewiesen. Sie nutzen hochentwickelte Service-Virtualisierung mit anderen wichtigen Testautomatisierungstools.
Entwickler können Integrationen früher erstellen, Abhängigkeiten stabilisieren und mit Parasoft die volle Kontrolle über ihre Testdaten erlangen Virtualisieren. Teams können schnell vorankommen, ohne auf den Zugriff auf abhängige Dienste warten zu müssen, die entweder unvollständig oder nicht verfügbar sind. Unternehmen können Partnern ermöglichen, ihre Anwendungen in einer dedizierten Sandbox-Umgebung zu testen.
Parasoft SOAtest bietet vollständig integrierte API- und Webservice-Testtools, die automatisieren End-to-End-Funktions-API-Tests. Teams können automatisierte Tests mit erweiterten Funktionen zur Erstellung von Funktionstests für Anwendungen mit mehreren Schnittstellen und Protokollen rationalisieren.
SOAtest und Virtualize eignen sich gut für netzwerkbasierte Tests verschiedener Art auf Systemebene, einschließlich der folgenden: