Automatiserade testsystem Fredrik Edling, Tekn. Dr. Enea Services Stockholm fredrik.edling@enea.com
Min bakgrund 2000: Civilingenjör teknisk fysik, inriktning mot tillämpad fysik 2004: Teknisk doktor, teknisk fysik med inriktning mot avancerad instrumentering och mätteknik Sedan 2005 konsult på Enea Services Stockholm - Testsystem, testledning, projektledning - Ansvarig för kompetensgrupp i testsystemutveckling - Ger seminarier och kurser i test och testsystemutveckling
Testmål Det finns olika testmål - Hitta fel - Öka förtroendet för testobjektet - Samla in information om testobjektets och testernas kvalitetsnivåer - Tillhandahålla riskinformation som beslutsunderlag för när testerna ska stoppas och produkten släppas - Förhindra fel
Automatiserad testning mål Stöd för inkrementell utveckling - inte nödvändigtvis snabbare, men mer flexibelt och större chans att upptäcka risker tidigare Automatisk regressionstestning Kortare testtider, speciellt viktigt i produktion Processmätningar och förbättringar upprepad testning sker på samma sätt Frigörande av mänskliga testresurser Ickefunktionell testning underlättas - last, prestanda, stress
Automatiserad testning hinder Automatiskt kaos betyder kaos fortare Okända/föränderliga system- och testkrav Nackdelar - Lång utvecklingstid av själva automatiseringen - Resurskrävande - Nödvändigt att utveckla egna verktyg - Passar inte alltid korta produktlivscykler
Intellektuellt Rutinartat Intellektuellt Testidentifiering Testdesign Testkonstruktion Typiskt område för testautomatisering Testhantering Testexekvering Resultatutvärdering 1) Loggning & Rapportering Rutinartat
Ett typiskt testsystem innehåller: återanvändbara delar för testexekvering produktspecifika testfall generella funktioner för mätning och analys instrumentdrivrutiner
Automatiserat testsystem FireWire, USB.. Ethernet Testdator GPIB Övervakning (Testare/Ledning) 1.23 1.23 VXI PXI DUT Fixtur Databaslagring Internet
Axplock av applikationer för vilka Enea har utvecklat testsystem 3G RBS Mobiltelefoner Fordon CAN Ventilator Dörrlås Anestesiapparatur Lastbilskranar DC/DC moduler
Utmaningen Funktionen hos testsystemet är inte allt Underhållsbart Återanvändbart Skalbart Noggrant Förutsägbart Stabilt Flexibelt Hur löser vi det?? Ska vi lösa det?
Att göra rätt från början Veta vad vi ska utveckla För vem utvecklar vi möt behovet Använd vanliga modeller för mjukvaruutveckling anpassade till testsystemutveckling
Designa efter behov Målmiljö Användare Livslängd
Instrumentet Skalbarhet Upplösning Storlek Databehandlingskapacitet Krav på instrumentet Miljökrav Antal kanaler Kostnad Noggrannhet Användbarhet Startsträcka
Instrumentet Naturliga instrument - Fristående instrument - Instrumentmoduler - Både fristående instrument och instrumentmoduler har algoritmer och funktionalitet inbyggda i instrumentet som inte kan modifieras av användaren Virtuella/Syntetiska instrument - Hårdvarumoduler - Mjukvarumoduler (t. ex. algoritmer och kontrollmoduler) - Underlättar omdesign av systemet - Ger exakt kontroll över vilka algoritmer som används
Fristående instrument Fördelar - Lättillgängliga - Kort startsträcka för att komma igång - Kostnadseffektiva - Hög prestanda (optimerad av tillverkaren) när instrumentet är nytt - All processorkraft i instrumentet, behöver ej externa processorer - Kalibrering - Självkalibrering hanteras i instrumentet - Kalibreringscertifikat från tillverkaren Nackdelar - Varje instrument har enbart sitt specifika syfte - Kan kräva många separata instrument utrymmeskrävande - Ej flexibelt - Många kablar och kopplingar mellan instrument - Ofta dålig överföringsprestanda till dator - Tar ofta tid innan ny teknik blir tillgänglig i fristående instrument - Hårdvaran är sällan uppgraderbar, utan hela instrumentet måste bytas ut
Modulära instrument Plug-in moduler, mindre i storlek än fristående instrument - Enbart funktionalitet för mätningen finns kvar (till exempel ingen display eller knappar) - Strömförsörjning och kylsystem delas mellan flera moduler Sparar pengar i teorin, men kan bli dyra i praktiken Beroende av en bussteknologi - Kan ge problem för långlivade system
Virtuella instrument 1(2) Ett system där mjukvaran definierar funktionaliteten hos generisk hårdvara Mindre investeringskostnad i hårdvaran, dvs billigare och enklare att uppgradera hårdvaran då mjukvaran ej behöver skrivas om
Virtuella instrument 2(2) Fördelar - Flexibilitet genom konfigurerbar mjukvara - Algoritmer kan enkelt uppgraderas - Möjlighet att enkelt uppgradera hårdvarumoduler utan att skriva om mjukvaran - Byggblock i systemet kan återanvändas för olika typer av mätningar, vilket ger färre redundanta hårdvaruelement - Användandet av samma algoritm medför att även om hårdvaran byts ut så fås samma beteende (så länge hårdvaran möter specifikationerna) Nackdelar - Initialt en större investeringskostnad (mjukvaruutveckling) - Kräver högre bandbredd på instrumentbussen - Mer komplex kalibrering av systemet - Kalibrering av algoritmer - Kan kräva inbyggda självkalibreringsfunktioner
Instrumentbussar GPIB PXI USB LAN/LXI VXI, RS-232, CAN, fältbussar 10 11 00 11
Design av mjukvaran i lager Lagerarkitektur ett av flera möjliga arkitekturmönster - Ett arkitekturmönster är en dokumenterad designlösning för den övergripande systemstrukturen Lager bryter ner systemets funktionalitet i olika delsystem med olika ansvarsområden som läggs i olika lager Lager n Lager n-1 Lager 1
Lagerarkitektur för och nackdelar En välstrukturerad lagerstruktur är lätt att underhålla och återanvända Gränssnittet kan standardiseras Lägre lager är oberoende av hur högre lager är implementerade Ändringar i ett lager påverkar inte underliggande lager Prestandan kan bli försämrad då data måste skickas genom flera abstraktionsnivåer Det kan vara svårt att designa väldefinierade gränssnitt för varje lager Det kan vara svårt att definiera antalet lager
Design av mjukvaran i lager Testmiljö Testfall Generella rutiner IVI Instrumentdrivrutiner VISA Hårdvarudrivrutiner (GPIB etc.)
Enea TDFrame TDFrame ett ramverk för testsystemutveckling - för LabView och TestStand Kortare uppstartstid Modulärt ramverk Instrumentoberoende Innehåller: - Kodmoduler - Mallar - Dokumentation -Exempel
Lär dig mer gå en kurs! LabView användarmöte i Västerås 23 april Kurser - Testsystemutveckling gör rätt från början - ISTQB Grundkurs i test av programvara och system - ISTQB Advanced Level Analyst - Integration och komponenttest - Kombinatorisk testning www.enea.se/training
Frågor? Ideér? Kommentarer?