处理这些局限性
上面介绍的局限性需要可以处理这些问题的新解决方案。我们提供了包含以下组件的解决方案:
Arsin QA Mapper
Arsin Effecta Validation Engine
IBM Rational Functional Tester
如图 2 所示,解决方案的主要组件是 QA Mapper(测试工件存储库)、RFT(自动地执行测试用例的引擎),及 Effecta (自动验证引擎)。用于 SAP 程序和事务的元数据作为执行组件(Execution Component)存储在 QA Mapper,RFT 读取它们来执行事务。RFT 推动执行组件用使用来自 QA Mapper 的元数据的包装脚本来执行测试用例。当执行测试用例时,该脚本拿出与测试用例相连接的测试规程,并执行组件或事务。对于验证,关键的信息,例如销售订单数或交付数,被传递给 Effecta 验证引擎,然后拿出与那些来自 SAP 数据库的键相应的实际值,然后将它们与期望结果进行比较。
图 2:Arsin SAP 测试解决方案的主要组件
图 2 中展示的解决方案处理了早期模型所带来的局限性。现在我们将详细地分析此解决方案。
测试数据管理
在 QA Mapper 产品中,测试数据是在关系数据库中进行管理的,这使得跨多用户的搜索、排序,和一致性维护都很容易。QA Mapper 还根据可能复用的数据集对数据进行维护。这些数据集是分别创建的,以便可以在各种测试用例中复用它们。QA Mapper 能够创建可以通过基于 web 的接口简单地维护的具体工程的且安全的测试数据集。此外,输入测试数据的创建是通过对来自在测系统的主数据的自动导入来加速的。
管理变更
该解决方案提供了不需要任何脚本变更的完全可定制且可配置的组件。使用实际数据之上的包装脚本和元数据意味着,对于屏幕上任意的附加的字段,只有元数据需要添加到数据库中。该特性节省了许多时间和工作量。
验证
Arsin 的验证测试引擎,称为 Effecta(参见右边图 2),推动了 QA 团队需要执行的每个测试用例的自动化的验证。验证令差不多 75% 的测试工作在手工场景下进行。通过 Effecta 的自动化减少了这一时间,并且生成了关于哪些验证失败了的详细报告,因而简化了失败情况下的调试过程。该工具还生成审计可追踪、可重复,且可伸缩的 QA 测试结果。
业务对象的配置和定制
将验证自动化的规程涉及业务对象及验证组件的创建。业务对象是在 SAP 中的事务中使用或受到影响的所有表,以及这些表通过字段建立的关系的聚集。它构成了可以确定来自一个表的哪些字段与另一个表中的字段相关联的连接平台。业务对象是容易配置且可扩展的。当事务必须具有新功能或包含新表时,可以通过添加必需的表和新的关系来扩展基本的业务对象,如图 3 所示。