QTP Datable方法整理
上一篇 / 下一篇 2015-01-06 22:12:00 / 个人分类:QTP
DataTable的操作包括:
DataTable.GetSheet(dtSheet) DataTable.GetSheetCount DataTable.[GetSheet.]GetRowCount DataTable.[GetSheet.]GetParameterCount DataTable.GetSheet(sSheetName).GetParameter(“ColumName”).ValueByName(iRowNumber) DataTable.[GetSheet.]GetCurrentRow DataTable.[GetSheet.]SetCurrentRow(RowNumber) DataTable.Value(ParameterID [, SheetID]) or DataTable (ParameterID [, SheetID]) DataTable.AddSheet(SheetName) DataTable.DeleteSheet(SheetName) DataTable.Export(filename) DataTable.ExportSheet(filename,SheetName) DataTable.Import(FileName) DataTable.ImportSheet(FileName, SheetSource, SheetDest) |
1.得到datatable总行数的命令:GetRowCount
语法:DataTable.GetRowCount
返回值:数字
示例:
以下示例使用 GetRowCount 方法查找 MySheet 运行时数据表中最长的列中的总行数,并将其写入报告。
rowcount = DataTable.GetSheet("MySheet").GetRowCount
Reporter.ReportEvent 2, "数据工作表中有 " &rowcount, "行。
2.得到datatable运行时的动态列数:GetParameterCount
语法:DTSheet.GetParameterCount
例: paramcount = DataTable.GetSheet("MySheet").GetParameterCount
3.GetCurrentRow方法
描述:返回运行时数据表的第一个工作表(用于测试的全局表或用于业务组件的业务组件表)中的当前(活动)行。
语法:DataTable.GetCurrentRow
返回值:数字
示例:
以下示例使用 GetCurrentRow 方法检索当前在运行时数据表中使用的行,并将其写入报告。
row = DataTable.GetCurrentRow
Reporter.ReportEvent 1, "行号", row
4. 设置当前active的行数(第一行为1):SetCurrentRow
语法:DataTable.SetCurrentRow(RowNumber)
例: DataTable.SetCurrentRow(tb_i+1)
DataTable.GetSheet("Action1"). SetCurrentRow(tb_i+1)
'注:此命令可在循环运行中不断指向下一行数据
你也可以用GetCurrentRow来获取Action1的行,然后再用SetCurrentRow来保持两个Action的当前行一致:
CurrRow = DataTable.GetSheet("Action1").GetCurrentRow
DataTable.GetSheet("Action2").SetCurrentRow(CurrRow)
Excel文件:D:\data.xls,有两个Sheet,第一个叫Login,第二个叫InsertOrder
当前QTP的Test中有两个Action:LoginAction和InsertAction
Test中对应的DataTable有三个:Global、LoginAction和InsertAction
下面就详细的说一下DataTable是如何操作这些数据的:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | '将data.xls中第一个叫Login表单内容导入到Test的Global表单中,将InsertOrder表单的内容导入到Test的LoginAction表单中 DataTable.Import "D:\data.xls" '将data.xls文件中的Login表单内容导入到当前Test的LoginAction表单中 DataTable.ImportSheet "D:\data.xls" , "Login" , "LoginAction" DataTable.GetSheet( "Global" ).SetNextRow '设置下一行,红色表示要操作的表单名字 columnCount = DataTable.GetSheet( "Global" ).GetParametercount '取得Global表单中的总列数 DataTable.GetSheet( "Global" ).DeleteParameter ( "列名" ) '运行时向Global表单中删除列 DataTable.GetSheet( "Global" ).SetPrevRow '设置上一行 cellValue = DataTable.GetSheet( "Global"
TAG: 我的栏目标题搜索日历
我的存档数据统计
清空Cookie - 联系我们 - 51Testing软件测试网 - 交流论坛 - 空间列表 - 站点存档 - 升级自己的空间
Powered by 51Testing
© 2003-2021
|