Bei solchen Anwendungen verarbeitet Software die Messergebnisse im Sensor. Die Messgenauigkeit der Hardware ist innerhalb der Betriebsparameter auf dem Datenblatt dokumentiert.
Zur Quantifizierung des Fehlerspielraums der Sensorsoftware wird das Problem in seine Teilbereiche aufgeschlüsselt.
Gängige Digitalsensoren beinhalten die Hauptkomponenten (Bild 4):
Analog-Front-End zur Rohdatenerfassung,
Treibercode zum Zugriff auf die Hardware,
Algorithmen zur Datenverarbeitung und -analyse, Glue Logic zur Weitergabe der Daten an die Anwendung.
Bei Algorithmen sollten die Tests nach Rundungs- und Vorzeichenfehlern sowie Pufferüberläufen suchen,
wenn Komponenten auf Hardware zugreifen, ist zu testen, ob die Software korrekt auf Timeouts reagiert und
an der Schnittstelle zu anderen Systemen, etwa zu einem Host-Mikrocontroller oder Anwendungsprozessor, muss die Software mit Überlastungen durch Interrupts umgehen können
Das Sensorsoftware-Testprogramm bei ams spiegelt eben diese Kategorien: Der Code ist zu Testzwecken modular konzipiert, zudem erfordern diese Abschnitte nur wenige Schnittstellen zu anderen Code-Teilen. Sie sind soweit wie möglich unabhängig vom Referenzcode gestaltet. Einen Algorithmus-Code zu testen, ist wenig kompliziert, Ein- und Ausgabewerte sind für den Tester vorhersagbar. Da der Datenursprung im Code nicht releviert ist dieser Test hardwareunabhängig.
Zum Test eines Treibercodes (zum Beispiel zur Verifikation der Registerzugriffe), ist dagegen eine Hardwaresimulation erforderlich. Bugs wie Kapazitätsüberschreitungen, Zugriffsereignisse außerhalb von Puffern und falsche Abbruchbedingungen für Schleifen werden mit Code-Testabschnitten effizient identifiziert. Allerdings reichen diese Tests nicht zur Verifikation der Funktionalität des kompletten Sensorsystems.