51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2559|回复: 7
打印 上一主题 下一主题

[原创] QTP自动化用例中的实际结果和上一条用例结果一样,如何解决

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-11-29 11:02:45 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
使用QTP录制了一个注册流程,有邮箱、昵称、密码和确认密码,分别参数化后写入测试用例,用例中有错误的邮箱(如已被注册或者格式不对),在执行其下一条用例时也报同样的错误,就算是注册成功了,也有报这样的错误,请高手指点迷津啊?
脚本代码:
Dim email, email2,urlname,urlname2,pwd,pwd2,dpwd,dpwd2
Dim i
email = datatable("邮箱预期结果",dtLocalSheet)
email2 = datatable("邮箱实际结果",dtLocalSheet)
urlname = datatable("昵称预期结果",dtLocalSheet)
urlname2 = datatable("昵称实际结果",dtLocalSheet)
pwd = datatable("密码预期结果",dtLocalSheet)
pwd2 = datatable("密码实际结果",dtLocalSheet)
dpwd = datatable("确认密码预期结果",dtLocalSheet)
dpwd2 = datatable("确认密码实际结果",dtLocalSheet)
Browser("互动汽车_3互动汽车").Page("互动汽车_3互动汽车").Link("注册").Click
For i = 1 to datatable.GetSheet("Action1").GetRowCount
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebEdit("email").Set DataTable("登录邮箱", dtLocalSheet)
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").Output CheckPoint("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网_2")
If email <> email2 Then
Reporter.ReportEvent 1,"错误信息","邮箱预期结果:"+ email +",邮箱实际结果:"+ email2
End If
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebEdit("nickname").Set DataTable("站内昵称", dtLocalSheet)
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").Output CheckPoint("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网_3")
If urlname <> urlname2 Then
Reporter.ReportEvent 1,"错误信息","昵称预期结果:"+ urlname +",昵称实际结果:"+ urlname2
End If
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebEdit("password").SetSecure DataTable("登录密码", dtLocalSheet)
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").Output CheckPoint("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网_4")
If pwd <> pwd2 Then
Reporter.ReportEvent 1,"错误信息","密码预期结果:"+ pwd +",密码实际结果:"+ pwd
Reporter.ReportEvent 1,"错误信息","确认密码预期结果:"+ dpwd +",确认密码实际结果:"+ dpwd2
End If
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebEdit("repassword").SetSecure DataTable("确认密码", dtLocalSheet)
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").Output CheckPoint("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网_5")
If dpwd <> dpwd2 Then
Reporter.ReportEvent 1,"错误信息","确认密码预期结果:"+ dpwd +",确认密码实际结果:"+ dpwd2
End If
datatable.GetSheet("Action1").SetNextRow
Next
Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebButton("WebButton").Click

数据表测试用例


回放完后在测试结果的当前参数表中邮箱实际结果列的内容从上到下是:
邮箱实际结果

邮箱已被占用
邮箱已被占用
邮箱已被占用
邮箱已被占用
邮箱已被占用
邮箱不能为空
邮箱不能为空

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2012-11-29 20:26:07 | 显示全部楼层
回复 2# 泰然


    你好,首先谢谢你的耐心解答,对于你提出的两个疑问:
1. 第一个楼下的已经解答,我只是在填写注册表单时循环运行,不需要每次都去点击“注册”按钮;
2. 第二个问题:我之前是插入的文本输出值,所以只有Page而没有WebElement,这一步是我的操作错误。
我也已经试了你说的getROProperty这个方法,确实解决了我的问题,但是又出现了新的问题,见以下截图:

对象描述不匹配的问题
脚本: Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebElement("Email格式错误,请重新输入").GetROProperty("innertext")
GetROProperty中的属性名称好像只能使用“innertext“,换了其他的,回放后返回的实际值都不正确。
还劳烦继续帮忙,谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2012-11-29 21:13:46 | 显示全部楼层
回复 2# 泰然

你好,首先非常感觉你的详细解答。对于你两个问题作以下解释:
1. 第一个问题,楼下“风雪夜归人”已经回答,我只是循环的去填写表单,不需要每次都点击按钮;
2. 我之前设置的是插入文本输出值,所以没有WebElement,现在已经改成了插入输出值的效果了。
在这个WebElement后面我按照你的指点使用了getROProperty,代码如下:
DataTable("email_actualResult",dtLocalSheet) = Browser("互动汽车_3互动汽车").Page("互动汽车-DRIVE FOR LIFE,爱汽车、爱生活、爱网").WebElement("Email格式错误,请重新输入").GetROProperty("innertext")
但是此时又出现了另一个问题,就是每当执行到这里的时候,都会有警告,如图:

在对象标识中使用了辅助属性和智能标识,没能解决;innertext的属性值在回放时应该是变化的,所以我将其属性值参数化并选择了随机数(其余默认),还是没能解决这个警告的问题。
还能继续帮忙,谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2012-11-30 11:16:38 | 显示全部楼层
回复 4# 风雪夜归人


我可以不可以这样理解:output不能用在失去焦点即可报错的web页面,而只有在点击“提交”之类的按钮后才会报错的脚本中才可以使用output。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-11 03:45 , Processed in 0.071285 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表