论文部分内容阅读
软件测试作为软件开发过程的重要环节,是保证软件质量,提高软件可靠性的重要手段,软件开发技术的发展,也必然会带动软件测试技术的发展。组件技术在当今的软件开发中应用日益广泛,而组件技术的一些特点使得传统的软件测试理论和技术对于基于组件技术构造的软件系统并不完全适用。研究适合组件系统特点的软件测试技术,已成为当前软件测试技术的重要课题。本论文主要研究面向用户的软件组件测试技术,即从用户的角度,以UML序列图模型描述的规格说明书为依据,生成测试用例,并以此从众多的候选组件中选择最适合系统的组件。本论文还提出了面向用户的软件组件测试框架,对候选组件调用预先生成的测试用例进行测试,并通过模拟组件实现了对多个候选组件的测试用例复用技术。论文的主要工作和贡献如下:1)首先分析了组件系统的特点,从整体上研究了基于UML模型的组件测试方法,给出了基于UML模型的测试策略,并对UML序列图模型进行了可测性与测试策略的分析。2)在测试用例生成方面,使用了带OCL约束的序列图,即从类图和状态图中提取信息以OCL形式附加在序列图中对象生命线的适当位置。首先检查序列图的完备性和一致性,然后从序列图中生成测试规格说明以及序列图的事件序列,最后根据测试准则采用等价类划分的方法进行测试用例的生成。3)提出了面向用户的软件组件测试框架。建立了一个完整的软件组件测试模型,包括基于UML序列图的测试用例生成,并调度组件运行这些用例,最后分析测试结果并生成测试结果报告。该模型可以在用户获得任何待测组件信息之前根据用户需求生成测试用例,实现了测试用例的生成与待测组件实现细节之间的相互独立。4)实现了一个完整的面向用户的软件组件测试系统,并以测试FTP客户端组件为例,根据UML序列图生成测试用例,并对不同的FTP客户端组件进行测试,验证了本文方法的有效性。