Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial Internet of Things >> Internet der Dinge-Technologie

Softwaretests bei RTI

RTI-Software ist das Herz vieler geschäftskritischer Systeme. Unsere Kunden legen selbstverständlich großen Wert auf die Zuverlässigkeit und Qualität ihrer Systeme. Wenn ich mich mit Kunden treffe und den RTI-Entwicklungsprozess vorstelle, diskutieren wir die Entwicklungspraktiken, die von uns verwendeten Tools und das RTI IIoT-Labor. Viele sind besonders neugierig auf die Softwaretests, die wir bei RTI durchführen und die Testframeworks, die wir verwenden. Ich genieße diese Gespräche immer; Wir sind stolz auf unsere Aufmerksamkeit beim Testen. Dieser Blogpost fasst die von uns durchgeführten Tests zusammen.

Unser Entwicklungsprozess und unsere Tests gelten für die gesamte RTI Connext-Produktsuite. Die Ausnahme bildet RTI Connext DDS CERT, das auf Anwendungen abzielt, die eine Sicherheitszertifizierung erfordern und einem anderen Entwicklungsprozess folgen. Während der Entwicklung und bevor RTI neue Software veröffentlicht, führen wir eine Vielzahl von Tests durch, um die korrekte Funktionalität zu validieren und sicherzustellen, dass die Software gut funktioniert und skaliert.

Einheitentests Überprüfen Sie, ob die einzelnen Funktionen wie erwartet funktionieren. Unit-Tests werden bei jedem Produktrelease als wichtigster Regressionstestmechanismus verwendet. Das Unit-Test-Framework kann mehr als nur einzelne Funktionen testen. Es ermöglicht auch eine Ebene von Single-Node-Feature-Tests. In neueren Versionen haben wir sogar vom Kunden bereitgestellte Quality of Service (QoS)-Einstellungen als Teil unserer Testkonfiguration integriert. Unsere Prozesse sind darauf ausgelegt, die korrekte Funktion in möglichst realistischen Umgebungen sicherzustellen.

Im Rahmen der Entwicklung neuer Funktionen erstellen wir einen Funktionstestplan und implementieren eine Reihe von End-to-End-Funktionstests . Diese Tests werden über einen maßgeschneiderten Testsatz oder im Fall von Connext DDS Micro in einem neuen verteilten Test-Framework implementiert. Diese Testumgebung verwendet eine Reihe von „Testläufern“, die Tests auf verschiedenen Computern ausführen, und einen „Testmanager“, der die Testausführung zwischen den Testläufern synchronisiert. Zur Beschreibung der Tests wurde eine einfache DDS-Testsprache entwickelt, und jeder Testläufer führt ein Skript aus, veröffentlicht die Ergebnisse (PASS/FAIL) und wartet auf die Ausführung des nächsten Skripts. Der Hauptfokus der Funktionstests liegt auf:

Wir führen verschiedene Interoperabilitätstests durch:

Tests installieren Integrations- und Interoperabilitätstests zwischen mehreren Produkten erfassen. Diese Tests werden sowohl manuell als auch über eine automatisierte Testsuite zur Installation ausgeführt. Installationstests deckt eine Vielzahl von Integrations- und Interoperabilitätsproblemen ab:

Um diese Tests zu beschleunigen und zu erweitern, haben wir automatische Installationstests für viele Funktionen. Aktuelle Tests umfassen:

Diese Tests werden auf 80 verschiedenen Architekturen ausgeführt, darunter Windows-, Linux-, Solaris-, Lynx-, QNX-, Darwin- und VxWorks-Plattformen.

Wir haben verschiedene Leistungs- und Speicherprofiltests. Die Erstellung eines validen und aussagekräftigen verteilten Leistungstests ist äußerst anspruchsvoll. Einfache Ansätze können Kompromisse in Bezug auf Puffer, Durchsatz, Latenz, Echtzeitbereitstellung, Stacks und Betriebssystem nicht handhaben oder auch nur grob messen. RTI verfügt über umfangreiche Erfahrung bei der Bewertung der Leistungskennzahlen, die für reale Systeme am wichtigsten sind.

Die kontinuierliche Integration von PerfTest und MemTest stellt sicher, dass wir keine Rückschritte machen (über einen voreingestellten Prozentsatz hinaus), wenn dem Connext DDS-Produkt neue Funktionen hinzugefügt werden.

Ausdauertests emulieren Langzeitszenarien. Dauertests überwachen den Heap-Speicher in verschiedenen dynamischen Anwendungsfällen, z. B. beim Erstellen und Löschen von Remote-Teilnehmern oder Erstellen und Löschen von Remote-Endpunkten. Das Dauertest-Framework läuft auch mit RTI Security Plugins in einem Fuzz-Test-Anwendungsfall, bei dem die RTPS-Pakete zufällig geändert werden. Die Tests werden mit der neuesten allgemein verfügbaren Version (GAR) ausgeführt.

Groß angelegte und Stresstests wird gezielt im Rahmen der Entwicklung neuer Funktionen erstellt. Als wir beispielsweise Transport Mobility (auch bekannt als IP-Mobilität) einführten, haben wir eine Reihe von Tests erstellt, um das Verbinden und Trennen von verschiedenen drahtlosen Zugangspunkten zu emulieren. Als wir die Discovery-Implementierung verbessert haben, haben wir ein spezielles Test-Framework erstellt, um Tausende von Endpunkten zu simulieren und automatisch zu überprüfen, ob sie von jeder Anwendung erkannt wurden. Typischerweise werden diese Tests nicht bei jedem Release erneut durchgeführt, teilweise aufgrund der Geräte- und Netzwerkanforderungen. Einige Tests (z. B. ein umfangreicher Erkennungstest) werden erneut ausgeführt, wenn wir Änderungen an der Erkennungsimplementierung vornehmen.

Unser Produkt ist leistungsstark und komplex und muss in einer erstaunlichen Viel

[1] [2] 下一页

Internet der Dinge-Technologie

  1. Open DDS vs. RTI DDS-Software
  2. GE gründet ein 1,2-Milliarden-Dollar-IIoT-Unternehmen
  3. Die Herausforderungen beim Softwaretesten von IOT-Geräten
  4. 634AI entscheidet sich für RTI-Software zur Verwaltung autonomer mobiler Roboterflotten
  5. Kostengünstiger tragbarer Detektor identifiziert Krankheitserreger in Minuten
  6. Fahrzeugsimulationssoftware:So testen Sie Radar und Lidar im Schnee
  7. Fertigungsartikel
  8. 16 Einheit 2:Härteprüfung
  9. Flying Probe Test (FPT):Machen Sie sich mit dieser PCB-Testtechnik vertraut
  10. Bedeutung der Durchführung von Funktionsprüfungen auf Leiterplatten