QTP中DataTable用例取值与循环

来源:互联网 发布:薪酬优化 密件工资单 编辑:程序博客网 时间:2024/05/01 12:49

要求: 登陆系统——>Goods——>Notice——>Goods——>Notice——>退出系统

 

思路: 登陆系统录制到Login Action,Goods录制到Goods Action,Notice录制到Notice Action,退出系统录制到Logout Action

 

步骤:

1、录制Login、Goods(有参数化)、Notice(有参数化)、Logout脚本

 

2、新建Action1,用于运行以上4个Action   

 

Java代码  收藏代码
  1. RunAction "Login", oneiteration  
  2.   
  3. For i = 1 to 3  
  4.     RunAction "Goods", oneiteration  
  5.     RunAction "Notice", oneiteration  
  6. Next  
  7.   
  8. RunAction "Logout", oneiteration  

 3、运行脚本

 

问题:根据以上步骤,确实循环了,但是总是取了DataTable的第一行值

 

解决问题:

1、在Goods和Notice脚本中设置for循环,代码如下:

 

Java代码  收藏代码
  1. For i=0 to datatable.GetSheet("Goods").GetRowCount-1 '定义循环执行次数  
  2.  '要循环的测试脚本  
  3.  ...  
  4.  DataTable.GetSheet("Goods").SetNextRow '获取DataTable中的下一行数据  
  5. Next  

 2、Action1中代码修改如下:

Java代码  收藏代码
  1. RunAction "Login", oneiteration  
  2.   
  3.   
  4. RunAction "Goods", oneiteration  
  5. RunAction "Notice", oneiteration  
  6.   
  7.   
  8. RunAction "Logout", oneiteration(此句需放到Notice脚本的最后)  

 3、运行脚本

 

0 0