论文部分内容阅读
图形用户界面(Graphical User Interface,GUI)软件测试烦琐,自动化测试势在必行。当前GUI软件自动测试工具存在回归测试复杂、覆盖率低、测试脚本复杂等问题,测试质量没有保证。针对当前GUI测试工具存在的问题,需要探索一种实用方便的GUI软件自动测试技术。在深入分析、研究了多种GUI软件自动测试方法和测试工具的基础上,设计了GUI软件的分层增量自动测试方案,建立了该方案的应用模型。针对GUI软件的分层特性,分层增量自动测试方案把GUI软件测试划分为窗体内测试和窗体间测试两个部分;以窗体为单位,利用分层有限自动机增量式地建立软件模型。为了在保证测试效果的同时,降低测试数据集的复杂度,方案中采用了均匀设计法生成测试数据。为了尽早发现软件设计错误,方案利用软件规格说明书为被测软件生成测试数据及预期结果,从而验证被测软件与其规格说明书的一致性。方案还定义了测试用例集的两个评价指标:可重用度和路径覆盖率。该方案具有“通用,增量”的特点,这也是目前自动测试的发展趋势。在分层增量自动测试方案的基础上,给出了其应用模型。在该模型中,GUI软件采用基于对象的模式来表示;测试数据采用XML文件来存储;测试脚本采用与被测软件开发语言相同的语言,并对所有测试用例保持通用,由测试数据驱动执行,能够调用测试控件库中的方法,增加的测试功能在测试控件库中体现;验证方法实现了简单对象验证、特定对象验证、集总验证、实用验证。该模型中,测试用例集的可重用度只受更改的测试点个数影响。为验证方案的合理性和实用性,用C#.NET实现了基于该方案应用模型的自动测试系统,并针对小型GUI软件进行了实验测试。测试结果表明:分层增量自动测试系统中,均匀设计法使得测试数据代表性强,测试数据集小;每个窗体有一个单独的测试数据文件及测试验证文件,测试文件独立性好、可重用度高;路径覆盖率高。