Fernando, Sachin2023-08-152023-08-152023-08-152023-08-10http://hdl.handle.net/10012/19690A major task in the design of automated vehicles is the need to quickly and thoroughly validate a development teams algorithms. There currently exists no explicitly defined common standard for developers working on Advanced Driver Assisted Systems to adopt during their software testing process. Instead different teams customize their testing process specifically to their software systems current needs. Literature indicates that these processes can be comprehensive but convoluted, and not flexible to change as test requirements and the system itself does. This thesis introduces a test framework at the unit, integration, and system test levels with the objective of addressing these challenges through a complete test framework centered around rapid execution and modular test design. At the unit test level a recommendation guide is put forth that is largely aimed at new developers with concrete actionable items that can be integrated into a teams process. For integration and system level testing, a software solution for ROS based development referred to as University of Waterloo Structured Testing Framework (UW-STF) is described in regards to both the benefits it provides as well as its low level implementation details. This includes how to tie the framework into using data generated from the popular simulator CARLA for end-to-end testing of a system. Lastly the test framework is applied to the codebase of UWAFT for their development efforts related to connected and automated vehicles. The framework was shown to increase readability/clarity at the unit test level, facilitate robust automated testing at the integration level and provide transparency on the teams current algorithms performance at the system test level (average F1-score of 0.77 and average OSPA of 2.42). When compared to the standard ROS integration test framework, UW-STF executed the same test suite with 60%+ reduction in lines of code and meaningful differences in CPU and memory requirements.enintegration testingsystem testingrobot operating system (ROS)continuous integrationA Structured Testing Framework for ADAS Software DevelopmentMaster Thesis