车身域HIL测试的背景
随着智能汽车技术的快速发展,汽车已从传统的交通工具转变为集信息娱乐、智能交互、自动驾驶等功能于一体的移动智能终端。人车交互也从最初的各种硬件开关衍生到车机大屏,语音控制,人像识别,手机App操作,卡片钥匙等等。
车身域作为智能汽车的关键组成部分,负责整合车辆的舒适性、便利性功能,其性能和可靠性对用户体验至关重要。因此,对车身域进行高效、全面的硬件在环(HIL)端到端测试成为确保智能汽车质量的重要环节。
传统HIL测试方案大多是以测试设备(如CANoe)为核心的硬线信号和总线信号仿真测试,以此为基础的HIL测试方案高度依赖测试设备商所提供的配套生态,缺乏自主性和灵活性。随着智能汽车的发展和普及,多模态的人机交互成为主流趋势,所以更加灵活,自主,多态,可扩展的端到端的测试方案成为HIL测试必须要考量的内容。
车身域HIL测试系统的不同方案
VTeststudio + Canoe + CAPL + VTSystem
-Windows10主机:作为运行自动化测试的主要载体 -VTeststudio:用于测试用例的设计与编写,可表格化,图形化,拖拽式编写测试用例。 -VTSvstem:提供虚拟测试系统,对待测系统的输入输出进行仿真。 -Canoe:用于总线仿真和协议分析,支持CAN、LIN、FlexRay等总线协议。 -CAPL:用于编写测试脚本,支持对总线通信的控制和数据处理。Python+pytest+win32+Appium+Allure+Canoe+CAPL+VTSystem
-Windows10主机:作为运行自动化测试的主要载体; -Python:为本项目的主要编程语言,黏合测试链路中的多个不同类型组件,实现端到端全链路自动化测试。除此之外,就长远考虑,python还有很好的扩展性,对后期项目的扩展和维护有很好的作用; -Pytest:作为测试前置/后置条件管理,测试用例管理,执行,测试数居收集的核心框架,服务测试用例的全生命周期; -Appium:Android设备自动化操作套件。主要为操作手机app和车机大屏; -Allure:用于生成详细的测试报告,支持多种格式和丰富的报告内内容; -Win32:调用windows components组件,与注册在windows中的)应用层软件进行交互,在本项目中,主要是对CANoe和VTSvstem进行控制; -VTSvstem:提供虚拟测试系统,对待测系统的输入输出进行仿真真; -Canoe:用于总线仿真和协议分析,支持CAN、LIN、FlexRav等总线协议; -CAPL:用于编写测试脚本,支持对总线通信的控制和数据处理;测试环境搭建
老方案测试环境搭建
老方案通过VTeststudio和VTSystem搭建测试环境,集成Canoe和CAPL。CANoe提供了强大的图形化界面,用户可以直观地进行测试环境配置,快速搭建起完整的测试系统。
例如,测试工程师可以通过VTeststudio的图形化界面,轻松设置信号的输入输出、配置网络拓扑结构等,大大提高了测试环境搭建的效率,适合对测试环境搭建不熟悉的初学者。
新方案测试环境搭建
新方案采用Python和pytest搭建测试环境,集成Canoe、CAPL、VTSystem、Appium和Allure。Python作为一种灵活的编程语言,结合pytest框架,可以实现高度自动化的测试环境搭建。例如,通过编写Python脚本,可以实现测试环境的自动化配置和初始化,支持复杂的测试场景和多平台测试。同时,Appium的集成使得移动端测试成为可能,满足了现代汽车系统中越来越多的移动设备交互测试需求。
测试用例开发
老方案测试用例开发
老方案的VTeststudio提供多种编辑方法,支持图形化、表格和口编程接口。图形化界面使得测试用例开发变得简单直观,初学者也能快速上手。
例如,测试工程师可以通过拖拽组件、设置参数等方式,快速构建测试用例。同时,
VTeststudio的表格编辑功能也方便用户批量生成测试用用例,提高了测试用例开发的效率。
新方案测试用例开发
新方案使用Python和pytest编写测试脚本,支持CAPL和Appium。Pythnon的灵活性和强大的库支持,使得测试用例开发更加高效和强大。
例如,测试工程师可以利用Python的pytest框架编写结构清晰的测试脚本,结合CAPL进行底层通信测试,同时利用Appium进行移动端界面测试,实现多平台、多场景的测试用例开发,满足复杂系统的测试需求。
测试执行
老方案测试执行
老方案的集成测试执行,实时监控测试过程。测试工程师可以在测试执行过程中,实时查看测试结果和系统状态,及时发现和解决问题。
例如,在测试过程中,可以实时显示信号波形、错误日志等信息,帮助测试工程师快速定位问题。这种实时监控功能对于初学者来说非常友好,能够帮助他们更好地理解测试过程和结果。
新方案测试执行
新方案的不仅支持老方案的所有功能,而且pytest支持多线程和并发测试,Appium支持移动端测试。多线程和并发测试可以显著提高测试效率,特别是在处理大量测试用例时。
例如,在测试一个复杂的汽车电子系统时,pytest可以同时运行多不测试用例,大大缩短了测试时间。同时,Appium的移动端测试功能使得测试工程师可以对汽车的移动应用进行自动化测试,确保其在不同设备和操作系统上的兼容性和稳定性。
测试报告生成
老方案测试报告生成
老方案自动生成测试报告,支持HTML和PDF格式。测试报告内容详细,包括测试结果、错误信息等,方便测试工程师进行分析和总结。
例如,测试报告可以清晰地展示每个测试用例的执行结果,包括通过、失败和阻塞等状态,同时提供详细的错误日志,帮助测试工程师快速定位问题原因。
老方案测试报告生成
新方案使用Allure生成详细的测试报告,支持多种格式。Allure是一个强大的测试报告工具,能够生成美观且功能丰富的测试报告。
例如,Allure报告不仅展示了测试结果的概览,还提供了详细的测试步骤、日志信息和附件等。同时,Allure支持多种格式的报告输出,方便测试团队根据需求进行查看和分享。