51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

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

[原创] 做了一个查询功能的测试,请大家给点意见,下来该如何进行脚本优化

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-2-3 16:54:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
'获取外部excel中的数据,赋值给变量
Dim ExcPath,oExcel,Sql,RecSet,Str1,Str2,Str3,Str4,Str5,Str6,Str7
ExcPath = "C:\demo\查询.xls"
Set oExcel = CreateObject("ADODB.Connection")
oExcel.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&ExcPath&";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"
Sql = "select * from [Global$]"
Set RecSet = oExcel.Execute(Sql)
While not RecSet.EOF
        Str1 = RecSet("馈路")
        Str2 = RecSet("供电所")
        Str3 = RecSet("变压器名称")
        Str4 = RecSet("台区")
        Str5 = RecSet("年")
        Str6 = RecSet("月")

'**************************查询sql语句拼接*************************start'
'主sql
Sql1="主sql "
'根据不同的查询条件,拼接动态sql语句
testsql=拼接后的sql
'*****************************查询sql语句拼接******************************end'

'******************************数据对比部分********************************start'
'把从excel获取的数据赋给脚本中的对象

Set conn=CreateObject("ADODB.Connection")
conn.ConnectionString=" "
Set res=CreateObject("ADODB.RecordSet")
strsql=testsql  '将拼接的sql语句赋值给变量strsql
conn.Open ConnectionString
res.Open strsql,conn

While not res.EOF
'获取页面中列表中的数据
'获取数据库中对应的值
'将获取到页面的数据和数据库中的数据进行对比,一致则成功,不一致则输入错误到report       

'关闭数据库连接
'******************************数据对比部分********************************end'
RecSet.MoveNext
Wend
oExcel.Close

[ 本帖最后由 mizhe521 于 2010-2-3 18:03 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-2-3 17:10:28 | 只看该作者
太乱,,,把ADO包装一下~~改分离的分离出来
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2010-2-3 17:28:34 | 只看该作者
太长实在看不下去
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2010-2-3 17:58:39 | 只看该作者
不长啊,我把很多都删掉了。帮帮忙,看完给点意见呗,呵呵
除了把ADO分离出来其他的还需要做什么改动吗?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2010-2-4 00:20:35 | 只看该作者
代码要不断的重构才行。一个函数最好只做一件事,但是要具备通用性。一些值 比如"C:\demo\查询.xls"可以做成函数的参数,写死了总感觉不太好。
把获取测试数据,sql语句拼接,获取页面的数据,获取数据库中的数据,还有比较数据拆成不同的通用函数。

我对QTP不是很熟,只是一些小建议
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2010-2-4 09:50:36 | 只看该作者
谢谢大家的回复
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2010-2-4 09:54:37 | 只看该作者
尽量别做数据库检查...在页面上验证就可以了,因为你肯定已经知道要出现的结果,然后再把结果和界面的比较就可以了,写SQL会增加风险,毕竟你不能保证你的SQL是完全正确的,还有库结构的变化也可能造成风险....做好测试数据也是非常重要的
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2011-4-25 16:31:12 | 只看该作者
尽量别做数据库检查...在页面上验证就可以了,因为你肯定已经知道要出现的结果,然后再把结果和界面的比较就可 ...
wugecat 发表于 2010-2-4 09:54


要把预期的数据结果集保存到EXCEL或者TXT里面吗?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-20 12:23 , Processed in 0.075991 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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