今天,仔细了解了QTP中参数的应用。
前几天一直未能解决的问题终于有了眉目。在一个action1中执行测试脚本,并将产生的输出保存到excel表中。然后,用另一个action2多次调用action1,并给其传递相应的参数,以便action1中根据参数将数据保存保存到excel表不同的行。
action2
For irow=1 to 3
RunAction "Action1 [Test02]", oneIteration, sfilePath,irow
Next
action1:
在action properties的parameters页,设置input parameters,添加两个参数sfilePath-string,irow-number类型。然后用Parameter("sfilePath") 、Parameter("irow")获得参数值
Dim i, j
Dim ExcelObj, ExlSheet
i=datatable.GetSheet(1).GetParameterCount '取列数
Set ExcelObj = CreateObject("Excel.Application")
ExcelObj.Visible = False
ExcelObj.Workbooks.Open Parameter("sfilePath") ,ForWriting, False
Set ExlSheet = ExcelObj.Workbooks(1).Worksheets(1)
For j=1 to i
ExlSheet.Cells(Parameter("irow"),j) = datatable.Value(j, 1)
next
ExcelObj.ActiveWorkbook.Save
ExcelObj.Application.Quit
Set ExcelObj = Nothing
set ExlSheet = Nothing