QTP中的Action

一、Action---重点!

1.Test测试:类似于“校区”,在QTP中制作的测试脚本代码的单位,是Action的集合。

2.Action动作:类似于“班级”,在QTP中是步骤的集合。

3.说明:

1)步骤有顺序,Action也有顺序。

2)运行Test时,依次运行每个Action的步骤。

4.注意:Action间步骤衔接。

5.制作多Action的Test:

1)修改Action名称:在关键字视图中,Action上右击,菜单中选择Action Properties,修改Name,点击“确定”,如果有提示框,在提示框中点击“是”。

2)新建Action:QTP菜单=》Insert=》Call to new Action,在Name文本框中修改Action名称,其他保持默认,其中Location位置选择第一项(At the end of the test),OK

3)录制时,需要在关键字视图上方的Test Flow下拉框中切换Action,然后再录制该Action的步骤。

4)查看Action顺序:在关键字视图上方的Test Flow下拉框中选择Test Flow。

6.Action级别的DataTable参数化:

1)Test级别:Test内所有Action的所有步骤全部都反复执行,测试数据存储在DataTable的Global Sheet(全局表单)中。

2)Action级别:一个Action内的所有步骤反复执行,其他Action不参与它的反复,测试数据存储在当前Action同名的表单(Current Action Sheet)中。

3)Action级别DataTable参数化必须设置当前Action表单运行哪些行数据:在关键字视图上方选择Test Flow的选项,在目标Action上右击,菜单中选择Action Call Properties调用属性,选择Run on all rows运行所有行,如果有提示框,点击OK,点击“确定”。

4)注意事项:Action级别的DataTable参数化,需要保证反复执行的那个Action首尾步骤必须能够衔接。

7.补充:DataTable中一个参数(列)可以被多个步骤同时使用。

 

案例:两位数加法器,多组数据加法计算,最后退出。Test5002

 

练习:Flight,实现登录1次、打开OrderNo是1的订单、再打开OrderNo是3的订单,再打开OrderNo是6的订单,最后退出1次。Test5003

要求:每次打开订单后,检查打开的订单是否正确。

 

案例:Flight,登录、打开订单时输入1000,点击OK,检查提示信息内容,点击“确定”,清除,输入2000,点击OK,检查提示信息内容,点击“确定”,清除,点击Cancel,退出。

 

8.分割Action----了解!

1)应用场景:录制前未准备好Action,录制过程中也没有新建Action,录制后也可以分割Action。

2)功能:是将一个Action的步骤划分到两个Action中。

3)分割的步骤:

a.点击关键字视图或专家视图中待分割位置的后一行代码。

b.QTP菜单=》Edit=》Action=》Split Action,或工具栏点击一把刀形状的图标。

c.如果有提示框,点击”是”。

d.如果未保存,需要在提示框点击“确定”来保存。

e.在分割Action的对话框中左侧选择Action间关系(兄弟、父子),一般选择第一项,右侧输入两个Action的名称,OK

4)说明:不建议分割,建议录制前准备好Action。

 

案例:Flight,录制登录、订票、退出步骤到一个Action中,分割为3个Action。Test5005

 

练习:Flight,录制登录、输入顾客姓名是lisi做条件来打开一个订单、退出的步骤到一个Action中,分割为3个Action。Test5006

 

9.调用Action

1)应用场景:实现测试代码的重复利用,提升测试效率。

2)调用的步骤:

a.QTP菜单=》Insert=》Call to Existing Action

b.在弹出框中点击”…”按钮来浏览到调用的源Test,点击“打开”,如果有弹出框,点击No不保存相对路径,选择要调用的Action,选择插入位置为At the end the test(与现有Action是兄弟关系),OK。

c.调用的Action如果是当前Test的第一个Action,需要修改QTP菜单=》Automation=》Record and Run Settings的配置与源Test一致。

d.如果调用的Action曾经在源Test中做过DataTable参数化,那么需要再修改Action Call Properties。

3)注意:调用Action时,只能调用Reusable Action(可复用Action)。

10.Action分类:

1)Reusable Action(可复用Action):可以被其他Test调用,默认Action都是该类型。

2)Non- Reusable Action(不可复用Action):不可以被其他Test调用,取消勾选Reusable Action复选框就可以设置为该类型。

3)External Action(外部Action):从其他Test调用来的Action,不能修改内容。

 

案例:制作Test,实现Flight登录、打开订单、退出的需求。调用Test5005的登录Action,调用Test5003的打开订单Action,调用Test5006的退出Action。Test5007

 

11.复制Action---了解!

1)应用场景:实现测试代码的重复利用,提升测试效率。用于制作相似的Action。

2)复制Action的步骤:

a.QTP菜单=》Insert=》Call to Copy of Action

b.在弹出框中选择Test,选择Action,选择是否编辑新Action的属性,选择新Action加入位置,OK

c.参照调用Action的笔记修改Record and Run Settings和Action Call Properties.

3)说明:

a.复制Action时,可以复制Reusable和Non-reusable Action。

b.复制过来的Action是一个属于当前Test的新Action,与源Test无关,可以修改内容。

 

案例:复制登录和退出Action

Test5009

 

12.总结Action的作用:

1)把步骤分组,方便管理和维护。

2)每个Action在DataTable中都有一个同名的表单,主要用于存储当前Action使用到的数据,把数据分组。

3)一个Action的步骤反复执行。

4)Action代码的重复利用。

5)对象仓库中的测试对象按Action分组。

 

posted @ 2019-06-10 22:20  不沉之月  阅读(983)  评论(0编辑  收藏  举报