论文部分内容阅读
随着软件规模的不断扩大,复杂程度不断提高,软件测试的难度也不断提高,在这种情况下,基于模型的软件测试技术得到测试人员的关注。在软件工程领域中,模型已经被广泛接受成为面向对象方法和设计的一部分,使用模型可以帮助开发人员分析、描述、设计和构建整个系统。测试同样可以使用模型进行,基于模型的测试技术是指使用描述软件期望行为的模型进行测试,这个模型同样被用来自动生成测试用例以及期望结果,最后检验被测系统是否通过测试。基于模型的测试技术不仅可以有效地降低测试成本和时间,而且可以达到较高的代码覆盖率,进而提高测试的质量。本文主要介绍了基于模型的软件测试技术以及如何将基于模型的测试技术应用于ERP(Enterprise Resource Planning,企业资源计划)系统。ERP系统由于涵盖了企业的众多业务有着其自身的复杂性,要求测试人员不仅具有测试的相关知识,还需要熟悉企业管理的业务流程,这就给测试工作带来了很大的难度。然而基于模型的测试技术的出现使得对ERP系统的测试变得简单,测试人员可以用基于模型的测试工具对ERP中的业务流程进行建模,然后利用工具自动生成测试用例的特性,简单地生成一系列测试用例,从而保证ERP业务流程的正确性。一旦业务流程有了改动或扩展,测试人员可以通过基于模型的测试工具批量的更新测试用例,从而避免了维护大量现有测试用例而带来的诸多困难和潜在的错误。本文以某公司的ERP产品MAX系统作为平台,以保证ERP业务流程的正确性为主要目标,同时实现测试代码的重用和较高的代码覆盖率,将基于模型的测试技术应用到实际的测试工作中。研究内容主要包括:首先,对ERP系统中常用的业务流程进行分析,从用户的角度考虑其可能对系统进行的操作,以及这些操作后系统的正确回应;其次,构建能正确表达业务流程的模型,并根据现有的自动化测试框架,同时考虑测试代码的可重用程度,对模型中的操作在代码级别加以封装;最后,开发一个基于模型的测试工具,使其不仅能构建和解析以多种不同类型的模型,并且能够根据基于模型测试技术的理论知识,以多种遍历方式自动生成测试用例和预期结果,同时该工具能够和MAX进行交互,自动运行这些测试用例并保存运行结果。自从基于模型的软件测试技术正式投入使用以来,MAX的测试工作得到了极大的改善。结果表明,它不仅可以有效地发现ERP系统中的缺陷,提高了系统的可靠性,更重要的是它成功地降低了测试的复杂性,缩短了测试的周期。