Utveckling av HIL-testsystem för mjukvarutest

För en kund som utvecklar och tillverkar industriprodukter har Infotiv designat, utvecklat och driftsatt ett HIL (Hardware-In-the-Loop) testsystem avsett för automatiserad testning av mjukvara i ett inbyggt system. I leveransen ingick även att bygga automatiserade testfall av tidigare manuella testfall, samt att integrera de automatiserade testerna i ett flöde för Continuous Integration.

Kunden beställde systemet med syftet att kunna testa mjukvaruleveranser tidigare i utvecklingsprojekten men också för att kunna utföra regressionstester på ett effektivt sätt. Viktiga krav från kunden var att testfallen med resultat skulle vara spårbara mot mjukvaruversion, samt att lösningen skulle vara skalbar för att kunna hantera ytterligare styrenheter eller varianter.

Infotivs lösning baseras på National Instruments PXI-plattform och innehåller moduler för realtidsexekvering, FPGA, relä-kort, analoga I/O, digitala I/O samt CANopen. För att kontrollera och konfigurera systemet används mjukvaran VeriStand från National Instruments. Utöver detta modifierades det existerande  test-exekutivet (byggt i LabVIEW) för att integreras med VeriStand. 

I Continuous Integration-flödet används Jenkins för att bygga mjukvaran som skall testas. Infotivs lösning integrerade testsystemet i flödet genom kopplingar mellan Jenkins, test-exekutivet och Veristand.  Flödet kunde därmed utökas till att automatiskt starta testsviter och att rapportera resultat efter att ändringar gjorts i mjukvaran som skulle testas. Ny mjukvara byggdes och testades varje natt för att kunna presentera resultat till utvecklingsteamet morgonen efter.

En bild som är tagen rakt in i en HIL rigg. Man ser installationen i sitt skåp. Del i ett HIL system.