man16181 发表于 2008-8-26 09:53:31

QTP软件测试工具中的登录脚本设计


 这里把脚本简单说一下,我们分析一下。
  当时问题是这样的,“我的错误的用户名就没办法登录”,其实含义就是脚本最好能处理成功的用户名错误的用户名,那么这里涉及到脚本的设计。
  目标如下:
  1. 脚本需要处理成功和失败的用户的登陆
  2. 数据驱动
  设计开发脚本如下:
  第一步录制脚本如下
  Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set "吕巍"
  Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set ""
  Browser("智能变电巡检仪系统 4.0").Page("Page").Syn
  Browser("智能变电巡检仪系统 4.0").Close
  以上为录制的正确的用户名,下边录制错误的用户名
  Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set "xx"
  Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set ""
  出现错误提示“该用户不存在”
  第二步 增强脚本
  现在需要设计的是一套脚本驱动所有的测试数据,这样可以驱动所有的用例数据,QTP中提供了datatable。
  但是有数据驱动也要做一个事情就是如何处理错误的用户名和正确的用户名,如何结合起来呢?
  这里我把datatable看作存放测试用例的地方,里面放入测试数据,还放入测试的预期结果。中国IT实验室这样我的设计已经出现雏形了。
我把datatable设计为三列
  username password status
  吕x
  xxx xxxx 该用户不存在
  第三列放入最后执行的结果,我设计的是空为成功登陆,如果有信息就用实际运行的结果和这一列对比.好了万事俱备只欠东风了
  修改脚本如下:
  Dim iStatus
  Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set DataTable("username", dtLocalSheet)
  Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set DataTable("password", dtLocalSheet)
  iStatus = DataTable("status", dtLocalSheet)
  If iStatus="" Then
  Browser("智能变电巡检仪系统 4.0").Close
  End If
  If iStatus="该用户不存在" Then
  Reporter.ReportEvent micFail, "登录", "登录失败."
  End If
  Browser("智能变电巡检仪系统 4.0").Close
  第三步,设置脚本运行过程
打开 tests-〉settings
  设置RUN TAB页面下 Datatable iterations中 Run On all rows
  这样就完成了整个脚本的设计工作,以上通过一个简单例子吧脚本的设计和软件的功能结合起来,达成脚本的设计效果。

jlxie2008 发表于 2008-9-1 17:12:33

好似有问题

 Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set DataTable("password", dtLocalSheet)
  iStatus = DataTable("status", dtLocalSheet)
这里只是读取表“status”里的列值,好像没有说如何将实际输出值怎么输入到该列表中。

thloong 发表于 2008-9-2 11:31:43

楼上的说的有道理

44705618 发表于 2008-9-5 18:19:31

真的是这样吗??

看第一遍的时候,还真没看懂。

testxiaoxiao 发表于 2008-9-8 11:29:26

输出值如何处理?

li159 发表于 2008-9-18 17:04:48

根本就不能运行。愁死认了。急等结果

Kevin.G 发表于 2011-3-11 11:05:24

  If iStatus="该用户不存在" Then
  Reporter.ReportEvent micFail, "登录", "登录失败."
  End If
  Browser("智能变电巡检仪系统 4.0").Close


这些东西是在测试能否读取excel的数据么?

你还真有想法,用自己设计数据状态来判读登陆是否成功和失败? 不知道你在测神马!:lol
页: [1]
查看完整版本: QTP软件测试工具中的登录脚本设计