Parameters UFT如何在不同的测试用例中为相同的操作传递不同的数据表
如何在不同的测试用例中为相同的操作传递不同的数据表 我有三个动作和两个测试用例,它们以不同的方式调用这些动作 TC 1调用操作1和操作2 TC 2使用操作1的不同数据调用操作1和操作3 我知道我们可以通过操作调用属性传递不同的参数,但是如果我们使用数据表,我们怎么能做同样的事情呢 提前感谢您的任何意见Parameters UFT如何在不同的测试用例中为相同的操作传递不同的数据表,parameters,datatable,qtp,Parameters,Datatable,Qtp,如何在不同的测试用例中为相同的操作传递不同的数据表 我有三个动作和两个测试用例,它们以不同的方式调用这些动作 TC 1调用操作1和操作2 TC 2使用操作1的不同数据调用操作1和操作3 我知道我们可以通过操作调用属性传递不同的参数,但是如果我们使用数据表,我们怎么能做同样的事情呢 提前感谢您的任何意见 所有三个动作都保存为单独的脚本 这就是我们实现应用程序自动化的方法 我们正试图从ALM驱动自动化,因此将ALM参数映射为UFT参数 我们正在为可恢复性创建模块化脚本,可恢复性由功能定义。如果在多
所有三个动作都保存为单独的脚本 这就是我们实现应用程序自动化的方法
不确定我是否正确地解释了它,但如果您无法理解,请务必让我知道,我将尝试更好地解释它好的,因此听起来您正在尝试做一些类似于我所做的事情。。。我应该补充说,这不是一个理想的解决方案,但对于我发现自己所处的情况,它是有效的 因此,我假设
模块1
、模块2
和模块3
从技术上讲都是QTP测试,您永远不会运行Test_1
和Test_2
也是您运行(!)的QTP测试-包括您上面提到的RunAction
调用,以及该测试的任何其他定制代码。那很好
注意:您不需要在任何“模块”的数据表中的任何位置拥有任何数据
相反,在每个“模块”中定义每个可重用操作以获取输入参数。然后将这些参数的数据保存在Test_1
、Test_2
等的数据表中,每个本地(操作)数据表中的每个测试都有对应于该测试操作中调用的可重用操作的参数的列
然后调用可重用操作:
RunAction "Action1 [Module1]", oneIteration,
dataTable.Value("someParam", dtLocalSheet),
dataTable.Value("someOtherParam", dtLocalSheet)
请注意,重要的是要理解-当使用对现有操作的调用时,DataTable(dtGlobalSheet和dtLocalSheet)引用的是“父”测试的数据表,而不是外部操作的数据表-即使对于外部代码-实际上,您调用的“模块”的数据表不存在)
如果您需要使用不同的数据运行Test_1
或Test_2
等,请选择:
1.只需将行添加到测试中的数据表中,或者。。。
2.创建default.xls
(测试中的一个,而不是“ReusableActions”)的副本,并根据需要在Excel中编辑-然后在每次运行之前,在default.xls上复制所需的数据xls,然后再运行测试
更好的是,如果你使用QC/ALM进行测试管理,在Google上搜索“使用QC/ALM进行业务流程测试”和QC/ALM的“业务组件”——我正试图让我现在的雇主走上这条路。上面描述的是一个“黑客”为了实现使用BPT可以更清晰地完成的任务……Action1、Action2和Action3的定义在哪里?您如何调用它们?您是否在3个操作的定义中定义了输入参数,或者只是参考了本地数据表?我在最初的帖子中尝试过对此进行解释。如果您理解它有困难,请告诉我否我不能完全确定我理解正确,但是…如果你需要调用一个外部操作,并且你需要为每个测试用例更改该外部操作的数据表,那么你不能在外部操作的模块中有一个与default.XLS格式相同的额外XLS,并且,从父测试用例中,在default.XLS之前复制这个XLS吗调用外部操作?我应该补充,我已经有一段时间没有使用QTP与QC/ALM集成了,所以我不知道这些XLS文件将存储在哪里,所以…是的,这正是我要说的。那么有没有复制数据的方法