实时嵌入式软件测试用例生成技术解析
1. 测试用例生成流程
随着UML技术和形式化方法的不断发展,将UML与传统形式化方法相结合已成为实时嵌入式软件测试领域的重要研究方向。一方面,UML作为事实上的行业标准,自推出以来得到了广泛支持,许多大公司都推出了支持UML的CASE工具;另一方面,形式化方法提高了测试的准确性和一致性,消除了测试中的二义性,提升了测试的自动化和效率。
实时嵌入式软件系统测试基于被测软件的相关文档,包括软件任务说明、需求规格、接口控制文档(ICD)和用户手册等。通过分析被测软件的结构、功能、接口和状态信息,明确系统的输入输出及其映射关系,建立静态和动态模型,进而结合测试用例生成方法自动生成测试用例。
基于实时扩展UML和RT - EFSM的测试用例生成流程如下:
1. 被测软件文档分析 :开发单位提供实时嵌入式被测软件文档,在分析过程中与软件开发人员充分沟通,获取软件的相关信息,包括功能和非功能特性。
2. 基于扩展UML类图的静态建模 :识别被测软件输入输出的静态信息,如系统周围交联设备信息、总线和I/O接口变量信息、数据交互的时序要求和硬件接口等。使用扩展构造型描述系统和交联设备,用< >构造型描述I/O和数据总线上的块信息。同时,了解软件内部的数据交换和计算过程。
3. 基于实时扩展UML状态图的动态建模 :使用实时扩展状态图和OCL语言完成实时嵌入式系统的动态行为建模。识别系统功能实现过程中的可观察状态信息,包括前置条件约束、触发事件、转换约束、相应系统动作和期望状态。结合系统状态转换信息,构建各个