Unit testing in variable frequency drive firmware development
No Thumbnail Available
Journal Title
Journal ISSN
Volume Title
Sähkötekniikan korkeakoulu |
Master's thesis
Author
Date
2014-10-20
Department
Major/Subject
Automaation tietotekniikka ja -järjestelmät
Mcode
ETA3005
Degree programme
AUT - Automaatio- ja systeemitekniikka
Language
en
Pages
67+8
Series
Abstract
The goal of this Master’s thesis was to improve the testing process of ABB Drives firmware development. This was done by studying and proposing best practices for performing unit testing in this development environment. ABB Drives manufactures variable frequency drives which are used to control the speed or torque of an AC motor. Unit testing the software of these complex embedded systems is not a simple task. Additionally, unit testing has not been widely used in ABB Drives so studying best practices for it is important. The theory of software testing and especially unit testing in embedded system development was studied in the beginning of the thesis to be able to evaluate the challenges and benefits of unit testing embedded software. Furthermore, the existing testing practices and needs for improvement in testing activities of ABB Drives were researched to understand the overall situation. The development process was enhanced by creating a unit testing environment. This testing environment helps developers to create and execute unit tests and to report the results of them. Additionally, the execution of the unit tests was automated and added to the existing automated build and testing process. Finally, example unit tests for an existing software module were created to be able to evaluate the effectiveness of the given best practices proposals and created testing environment. These tests also serve as an example of how to perform unit testing in this environment.Diplomityön tavoitteena oli kehittää testausprosessia ABB Drivesin taajuusmuuttajan ohjaussovelluksen kehityksessä. Testausprosessia kehitettiin tutkimalla ja ehdottamalla parhaita toimintatapoja yksikkötestauksen suorittamiseksi tässä kehitysympäristössä. ABB Drives valmistaa taajuusmuuttajia, joita käytetään sähkömoottorin nopeuden tai vääntömomentin ohjaukseen. Tällaisten monimutkaisten sulautettujen järjetelmien ohjelmistojen yksikkötestaus ei ole yksinkertaista. Yksikkötestausta ei ole myöskään käytetty kovin laajalti ABB Drivesilla, joten yksikkötestauksen parhaiden toimintatapojen tutkiminen on tärkeää. Ohjelmistotestauksen ja erityisesti sulautetun järjestelmän yksikkötestauksen teoriaa tutkittiin työn alussa, jotta sulautetun ohjelmiston yksikkötestauksen haasteet ja hyödyt voitaisiin arvioida. Tämän lisäksi selvitettiin ABB Drivesin olemassa olevia testauskäytäntöjä ja niiden parannustarpeita, jotta tilanteen kokonaiskuva hahmottuisi. Kehitysprosessia parannettiin luomalla yksikkötestausympäristö. Tämä testausympäristö auttaa kehittäjiä luomaan ja ajamaan yksikkötestejä sekä raportoimaan niiden tuloksia. Lisäksi yksikkötestien ajaminen automatisoitiin ja se lisättiin osaksi olemassa olevaa automaattista kännös- ja testausprosessia. Lopuksi luotiin esimerkkiyksikkötestit olemassa olevalle ohjelmistomoduulille, jotta ehdotettujen toimintatapojen and luodun testausympäristön toimivuutta voitiin arvioida. Nämä testit toimivat myös esimerkkinä, miten yksikkötestausta tulisi suorittaa tässä ympäristössä.Description
Supervisor
Sierla, SeppoThesis advisor
Pekkarinen, IlkkaKeywords
unit testing, software testing, testability, variable frequency drive, embedded system development, yksikkötestaus, ohjelmistotestaus, taajuusmuuttaja, sulautetun järjestelmän kehity