论文部分内容阅读
近年来,随着信息技术的快速发展和日益普及,智能卡的应用市场和应用领域也在不断扩大,例如手机卡、银行卡、身份证和社保卡等的普遍应用。智能卡的使用离不开其内部的操作系统(COS)的支持。COS控制智能卡与外界的信息交互,管理卡内的存储器并在卡内完成各种命令处理。COS的可靠性和稳定性直接关系到整个卡片的生命质量,COS失效,可能会给用户或企业造成非常严重的后果。因此,为了保证COS的质量,需要一种正规、全面和可靠的测试方法。本文在学习前人所做工作的基础上,提出了一种新的COS脚本测试方法。本文首先分析了当前常用的软件自动化测试工具和测试方法,从中学习好的方法和经验。然后介绍了软件测试理论的相关基础知识,并分析了嵌入式软件的特点,对嵌入式软件的测试特点、测试模型和测试种类进行了相关研究,从而为实现COS的脚本测试技术奠定了坚实的理论基础。本文研究了COS的软/硬件体系结构以及智能卡与读卡器和终端之间的通信机制,针对COS的特点和功能结构,对COS的测试提出采用脚本化的测试方法,并搭建了COS的测试平台模型。同时,本文设计了一种针对COS测试的脚本语言UCSL,利用扩充的巴科斯-瑙尔范式(EBNF),描述了UCSL脚本语言的主要语法定义,并详细阐述了运行该脚本语言的解释器的实现机制。利用所搭建的测试平台和UCSL脚本语言,本文以居民健康卡为例,对居民健康卡COS设计了一套测试方案,分别从命令解释功能、应用功能、安全性、防插拔和耐久性等五个方面对COS进行了规范、全面的测试。测试结果表明,本文所提出的UCSL脚本语言以及测试方案能够很好的测试出COS中潜在错误和缺陷,保证COS的稳定性和可靠性。并且UCSL脚本还在易读/易开发、脚本复杂程度以及运行速度等方面具有一定的优势。