Developing an operating system (OS) for low-end embedded devices requires continuous adaptation to new hardware architectures and components, while serviceability of features needs to be assured for each individual platform under tight resource constraints. It is challenging to design a versatile and accurate heterogeneous test environment that is agile enough to cover a continuous evolution of the code base and platforms. This mission is even morehallenging when organized in an agile open-source community process with many contributors such as for the RIOT OS. Hardware in the Loop (HiL) testing and Continuous Integration (CI) are automatable approaches to verify functionality, prevent regressions, and improve the overall quality at development speed in large community projects. In this paper, we present PHiLIP (Primitive Hardware in the Loop Integration Product), an open-source external reference device together with tools that validate the system software while it controls hardware and interprets physical signals. Instead of focusing on a specific test setting, PHiLIP takes the approach of a tool-assisted agile HiL test process, designed for continuous evolution and deployment cycles. We explain its design, describe how it supports HiL tests, evaluate performance metrics, and report on practical experiences of employing PHiLIP in an automated CI test infrastructure. Our initial deployment comprises 22 unique platforms, each of which executes 98 peripheral tests every night. PHiLIP allows for easy extension of low-cost, adaptive testing infrastructures but serves testing techniques and tools to a much wider range of applications.
翻译:为低端嵌入装置开发操作系统(OS)需要不断适应新的硬件架构和组件,同时需要确保每个平台在资源紧缺的情况下能够使用功能,防止倒退,提高大型社区项目开发速度的总体质量,在本文中,我们介绍一个灵活、准确的多功能、多功能测试环境,足以涵盖代码基和平台的不断演进。这个任务在组织一个灵活的开放源社区进程,与许多贡献者如RIOT OS等组织起来时,甚至更加复杂。LOOP测试和连续整合中的硬件是自动化的,用于核查功能、防止回归、提高大型社区项目开发速度的总体质量。我们在此文件中介绍一个多功能和准确的多元测试环境,这个环境非常灵活,足以涵盖代码库和平台的不断演化。 PHILIP采用一个工具辅助的精细精细 HIL测试程序,用于持续演化和部署周期。我们解释它的设计,如何支持HIL测试HL的简单初始测试,并使用我们22个实际测试平台的高级测试。