论文部分内容阅读
随着计算机软件设计技术和开发工具的迅速发展,应用软件的规模和复杂性愈来愈大,带来了对计算机应用软件安全性和可靠性的更高要求。软件测试是为了发现软件产品中的缺陷,并纠正的过程,在创建和发布高质量的软件产品中起到至关重要的作用。如何保证软件的质量,特别是软件可靠性,已成为软件工程中的关键问题之一。而对于常用在安全关键性领域的嵌入式系统,如何进行测试,提高软件的可靠性,也受到越来越多的关注。但由于嵌入式软件的特殊性,可靠性和安全性的要求往往很高,对其进行测试时仍然存在很多问题和挑战。本论文对软件测试和软件可靠性工程领域中存在的问题作了较深入的研究,针对嵌入式实时软件的可靠性测试作了探索性研究和实验,主要内容如下:首先从软件工程的角度对软件测试和可靠性测试进行介绍,对现有的测试技术和软件可靠性测试方法进行分析和比较。软件测试用例设计和产生是软件测试中的难点和关键,它决定着软件测试质量的高低。本文详细研究了当前自动产生测试用例的方法,主要包括基于Z语言描述的规格、基于模型、面向路径等。在此研究基础上利用Petri网的理论,探讨了一种基于时间Petri网产生测试用例的方法。其次,结合特定的应用领域对自动产生测试用例的方法进行探讨。在传统的基于使用模型的软件可靠性测试中,模型高度抽象很难实现自动化的测试。且基于模型的测试技术通常采用单一模型描述系统行为,限制了产生测试用例的类型和数量。因此,本文针对嵌入式实时软件,设计了一种基于分层模型产生测试用例的方案,采用逐层细化的方法,产生可执行的测试序列。基于以上的理论研究,分析当前主要的软件可靠性测试工具,设计并实现了一个软件可靠性测试的辅助平台,简化了测试的复杂性,可应用于嵌入式软件可靠性的仿真测试系统中。最后对本论文的成果进行了总结,陈述了不足和未来待完善的工作。