Simulering
Vad är Mjukvarutesting i simulerad miljö?
Det är en miljö där din eller dina mjukvaror kan exekvera och debuggas tillsammans med en testmotorer, omvärdssimulator, bussimuleringar etc på en PC. För att få en effektiv mjukvarutestning måste man komma igång i ett tidigt skede i projektet med SIL (Software In the Loop test) och inte vänta tills hela produkten är färdigbygg innan man börjar testa.
I en simulerad test miljö kan man använda sig av de bästa test och debuggverktygen och är inte låst till vad den specifika hårdvaran har för stöd. Har men en simulerat testmiljö är man inte heller begränsad av tillgång på hårdvara och testriggar utan alla utvecklare och testare kan utföra tester på sin egen PC.
Prata med en expert
Anders Öberg - expert inom Simulering
Du är välkommen att höra av dig till Anders för att diskutera simulering.
Anders Öberg
070-244 51 21
anders.oberg@berotec.se
Steg 1
För att ha de bästa förutsättningarna för att lyckas med en enkel implementering av en simuleringsmiljö så skall man ha en bra mjukvaruarkitektur med väldefinierade drivar lager. För där är oftast det bästa stället koppla bort hårdvaruberoende och styra över till en simulerad miljö. I den simulerade miljön bygger man upp simulerade drivrutiner med samma interface mot applikationen som då enkelt kan integreras. Skillnaden med dessa är att de inte kopplar till någon riktigt hårdvara utan till simuleringar av databussar, minnen, IO etc. Detta koncept funkar både för enklare IO kort som för mer komplexa hårdvaror som även använder OS.
Steg 2
Det andra steget är att skapa en omvärld till din applikation. Detta kan göras mer eller mindre avancerat. En enkel modell är att bara koppla signaler till mjukvaran som man manuellt skickar stimuli på. En mera avancerad lösning är att skapa dynamiska modeller av omvärlden som genererar feedback baserat på styrsignaler från systemet och matematiska modeller som man utvecklar i något endamålsensligt verktyg som tex LabView och Matlab/Simuling
Den simulering man skapar kan i de flesta fall också återanvändas i HIL (Hardware In the Loop tester senare).
Steg 3
Om man vill ta testningen till ytterligare en nivå kan man också lägga till icke funktionell testning med precis felinjicering då man testar i en simulerad miljö. I den simulerade miljön är allt åter upprepbart och man har full kontroll och tillgång till alla bussar och signaler där man kan injicera olika typer av fel för att testa systemets robusthet.
Man kan också enkelt använda simuleringen för kontinuerliga regressionstester.
Nytta
Om man testar i en simulerar miljö kan mjukvarutester ske parallellt med att hårdvaran utvecklas. Eftersom ett stort antal buggar kan lösas i den simulerade miljön är kvalitén mycket hög på mjukvaran som kommer för testning på prototyper och testrack vilkas tillgänglighet i regel utgör en trång sektor i projektet.
Sedan finns det också ett antal test som inte lämpar sig att börja med i en riktig miljö när det rör sig om styrning av maskiner som kan vara farliga och kanske kräver regulatorer för att hålla sig stabila. Att sätta en brytpunkt i ett styrsystem för ett flygplan när man testar det på riktigt är tex inte lämpligt.
Sedan finns det också den ekonomiska aspekten, det är dyrt att bygga testriggar och prototyper som i regel kommer att skrotas. Det kostar också tid med hårdvara som strular och sladdar som glappar. I en kontrollerad simulerad miljö är det enkelt att testa olika konfiguration utan omkopplingar. Vem har inte drömt om att ha hela testlabbet på fickan?
Konsulthjälp
Vill du ha hjälp av en konsult inom Simulering?
Du är välkommen att höra av dig till vår affärsledare Urban för att se vilken av våra konsulter som skulle kunna hjälpa dig bäst.
Urban Wellholm
070-391 92 94
urban.wellholm@berotec.se
Hitta rätt bland våra konsulter
Vi har flera konsulter som kan hjälpa dig med Simulering
För att söka bland våra konsulter inom Produktutveckling (där Simulering ingår)
Gå in på vår konsultsida