Mocking embedded hardware for software validation

dc.contributor.advisorKhurshid, Sarfraz
dc.contributor.committeeMemberBard, William
dc.creatorKim, Steve Seunghwan
dc.date.accessioned2016-11-01T19:35:56Z
dc.date.accessioned2018-01-22T22:30:56Z
dc.date.available2016-11-01T19:35:56Z
dc.date.available2018-01-22T22:30:56Z
dc.date.issued2016-08
dc.date.submittedAugust 2016
dc.date.updated2016-11-01T19:35:56Z
dc.description.abstractThis report makes the case for unit testing embedded systems software, a procedure traditionally found in application software development. While the challenges of developing and executing unit tests on embedded software are acknowledged, multiple solutions are presented. The GNU toolchain and a Texas Instruments microcontroller are used as an example embedded target. Two applications, one introductory and one more realistic, were developed for this embedded target using the C programming language. This report details the procedure required to apply open-source frameworks, Unity and CMock, to the two embedded applications. These frameworks, combined with the techniques outlined in this report, accomplished several goals of unit testing. The goals included automated validation of the embedded applications, increased code coverage, and protection against regression defects. In addition, it is shown how unit tests led to more modular software architecture. Potential ideas to extend this research to other tools, environments, and frameworks are also discussed.
dc.description.departmentElectrical and Computer Engineering
dc.format.mimetypeapplication/pdf
dc.identifierdoi:10.15781/T2DB7VS8D
dc.identifier.urihttp://hdl.handle.net/2152/43591
dc.language.isoen
dc.subjectMocking
dc.subjectUnit testing
dc.subjectValidation
dc.subjectEmbedded systems
dc.subjectEmbedded
dc.subjectSoftware
dc.titleMocking embedded hardware for software validation
dc.typeThesis
dc.type.materialtext

Files