我是靠谱客的博主 帅气苗条,最近开发中收集的这篇文章主要介绍QTP学习笔记 之 DataTable参数化循环,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

   前段时间开始了QTP学习生涯,首先是熟悉了QTP工具的使用及组成部分的介绍,没有按照书上写的例子来,而是使用工作中真实的例子一步步摸索,熟悉的过程已过去一段时间了,由于比较忙暂停了,今天以脑海中的记忆重新开始,主要研究的是参数化后如何循环运行和下拉列表取值。其实掌握之后才发现很简单,然而自己走了很多弯路,以至于一

天下来就学会了这两点:
   录制的流程是:登录-新增教师名单-退出,这三个事件分别放在不同的ACTION里面,即login,addteachers,logout,我使用的DATA TABLE对教师信息进行参数化的,工号不能重复,性别和职务都是从下拉列表中随机取值,logint logout不需要循环,仅addteachers循环,其实很简单,只需选中addteachers点击鼠标右键选择action call properties - run 中有几个选项:
   run one iteration only:是指仅运行一次迭代,也就是说,即使Data table 中有多条测试数据,也仅执行一次。
   run on all rows:是指按数据表格中的所有数据都运行一次
   run from row...to row...:可根据自己需要设置运行的测试数据范围
   起初我本想写个for循环的,但怎么也不行,问题就出在这些参数不是全局的,而是在addteachers这个Action里,所以每次循环时要么就是从登录开始,要么就是获不到这个参数值。还是把我先写的for循环语句写出来吧,如果有知道的朋友请指正,我是在addterachers里写的,如下:

  dim currRow
  currROW=DataTable.GetCurrentRow 获得当前行赋给currRow作为初始值
  for i=currRow to datatable.GetRowCount -1 (datatable.GetRowCount是获得总行数,因为起止行是从0开始,所以减去1,后面有个Step 1 ,默认是1)

  DataTable.setCurrentRow(i) (然后再将i的值赋给currRow)

  statements..... 执行脚本

  next


  也有可能是我的循环语句写错了,反正没成功,也不知道使用这两种方法有何区别,哪种效率高?

下面再介绍如何获得下拉框的值

   Browser("").Page("").Frame("mainFrame").WebList("select").Select RandomNumber(0, 1)随机取下拉框中的值

  Browser ("").Page("").Frame("mainFrame").WebList("select").GetROProperty("items count")(这一句是获得下拉框的值数量)

Browser("").Page("").Sync  

下面这段是我在网上搜的

'i = Browser ("").Page("").Frame("mainFrame").WebList("select").GetROProperty("items count")
'row = i-1
'For j=0 to row
Browser("").Page("").Frame("mainFrame").WebList("select").Select RandomNumber(0, 1)'  "#"& j
Browser("").Page("").Sync

最后

以上就是帅气苗条为你收集整理的QTP学习笔记 之 DataTable参数化循环的全部内容,希望文章能够帮你解决QTP学习笔记 之 DataTable参数化循环所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部