PTF 相关

2020-02-19  本文已影响0人  swordofAltair

PTF简介

PTF是Process Test Framework的简称。事务码为PTF,是SAP的一种自动化测试工具。

开发人员可以在PTF中定义需要自动化测试的业务场景(Scenario)。

PTF的应用界面如下:

,PTF应用界面

PTF通过调用预先定义好的Business Object的Action,根据Variant变量传入的参数以及Reference Step变量传入的引用步骤,来全自动执行Action中定义的业务流程。

例如图中所示,Step 2调用 A2X_CHECK_ITEM ,传入A2X_CHECK_ITEM10 变量定义的参数,Reference Step 参考的是Step 1,因此将Step 1 的结果:Document ID(0060002879)传给Step 2 进行计算。

对于执行类的Action而言,如A2X_CREATE_DEEP,会根据运行结果,返回给Execution_Status;

对于判断类的Action而言,如A2X_CHECK_ITEM,会根据运行结果,返回给Check_Status。

执行类Action的返回值


判断类Action的返回值

PTF执行结束后,可通过Application Log来查看运行日志。

Application Log按钮 Application Log

这些日志是在Action中通过调用me->mo_run_environment->append_log方法来定义的。

append_log方法


PTF开发流程

1.创建Business Object Class

PTF实际是调用已定义好的Business Object Class的Action 来进行的。所以PTF开发的第一步是创建Business Object Class。

事务码SE24进入Class Builder应用。

Class Builder界面

PTF相关的所有BO都继承自Super Class:CL_PTF_BO。

CL_PTF_BO结构

包含CREATE, CHANGE, DELETE, CHECK, EXECUTE_ACTION, EXECUTE_CHECK, CHECK_EXISTENCE七个抽象方法,需要在子类中根据业务需求给出具体实现。

EXECUTE_ACTION方法:

这个方法的功能是接收PTF应用传过来的每个Step的“Action”,“Variant”等字段的值,并根据值来调用相应的方法。

接收传值

通过get_step_data方法来接收传值。得到的ls_step_data结构如下:

ls_step_data结构

获取到了ACTION,VARIANT,Reference Step,Reference Document等字段。

接下来通过ACTION字段的值,去判断应该调用什么Method去执行。并把上述ls_step_data传给该Method。

2.注册Business Object

事务码SE16N进入General Table Display应用,进入PTFBO表。

PTFBO 注册Business Object

注册一个新的Business Object,关联第一步中创建的Business Object Class。注册后,就可以在PTF中调用这个Business Object了。

3.创建Test Data Container

Test Data Container 的作用是预定义将要传给Action 的 Variant 结构以及缺省值。

首先,事务码SECATT进入Extended Computer Aided Test Tool应用。

选中Test Data输入名称,创建一个新的Test Data Container。

创建Test Data Container

接下来,在新创建的Test Data Container中定义Parameter。每个Parameter对应一个Variant结构。

Parameter定义

Parameter中详细定义了该Variant要包含的Element以及各Element的属性。

Element以及属性

接着,按照Parameter的结构来构建用来被PTF调用的Variants,并为他们赋值。

Variants Variant 赋值

最后,为BO的每个Method选定将要传入的Test Data Container,并在PTFBOA这个Table中去注册。

事务码SECATT,进入PTFBOA表。为每个Method指定Test Data Container。

注册Test Data Container

至此,PTF相关的开发流程大致介绍完毕。

上一篇下一篇

猜你喜欢

热点阅读