查看完整版本: 急!关于数据库检测点的问题

xxyyzzz 2008-5-20 10:46

急!关于数据库检测点的问题

对于查询结果做检查
1.为什么数据库数据增加了,可是检查显示的始终是我建数据源时显示的那些记录
2.查询条件已经改变了,为什么检测点结果还是正确
是我对数据库检查点理解有错吗?我的理解是做了数据库检测点,写出的SQL语句显示的记录应该与页面的查询结果一致。

xxyyzzz 2008-5-20 13:42

没人支持下吗,急用啊,多谢

xueboy118 2008-5-20 15:00

你的数据库检查点的是用QTP向导生成的,还是用纯代码实现的?
我感觉用QTP向导生成的数据库检查点灵活性太差,我一般是用纯代码的方式来实现的。

xxyyzzz 2008-5-21 14:37

我都是用QTP向导生成的,能给个代码的例子吗

jackymail 2008-5-21 16:04

为防止误导他人,将错误言论删除。

[[i] 本帖最后由 jackymail 于 2008-5-21 17:02 编辑 [/i]]

xueboy118 2008-5-21 16:17

Browser("网站后台管理").Page("网站后台管理").Frame("left").Link("工作站人员管理").Click
Browser("网站后台管理").Page("网站后台管理").Frame("main").Link("添加").Click
Browser("网站后台管理").Page("网站后台管理").Frame("main_2").WebEdit("username").Set "vv1"
mm=Browser("网站后台管理").Page("网站后台管理").Frame("main_2").WebEdit("username").GetROProperty("value")
Browser("网站后台管理").Page("网站后台管理").Frame("main_2").WebEdit("password").SetSecure "448fd7cf8e392c5cdb8ca299"
Browser("网站后台管理").Page("网站后台管理").Frame("main_2").WebEdit("repassword").SetSecure "448fd7d1d0c5ec492dd8a447"
Browser("网站后台管理").Page("网站后台管理").Frame("main_2").WebButton("确  定").Click
'Browser("网站后台管理").Page("网站后台管理").Sync
[color=Black][b]------上面的代码是在网站后台添加一个管理员,下面的代码是用来在数据库中检查有没有新的记录生成[/b][/color]
Dim res,cmd,sql
Set Res=createobject("adodb.recordset")
Set Cmd=createobject("adodb.command")
[b]‘连接SQLServer2000数据库[/b]
(连接数据库代码显示不完整,我截了张图片,具体见图片)
Cmd.CommandType = 1
[b]‘这条SQL用来查询数据库中是否存在新添加的用户的记录[/b]
[b]sql="select  *  from member  where username='"&Trim(mm)&"'"[/b]
Cmd.CommandText = sql
msgbox sql
Set  res =Cmd.Execute()
[b]’if条件用来判断查询的结果中有没有值(关于SQL的查询,以及IF条件中的判断,你可以根据实际情况来进行修改)[/b]
[b]If (res.eof=true) Then[/b]
[b]   Reporter.ReportEvent 1,"添加用户,数据库验证","添加失败"[/b]
[b]else[/b]
[b]    Dim w[/b]
[b]    w=res("username")[/b]
[b]    If mm=w Then[/b]
[b]        msgbox "username=="&w&",页面数据与数据库数据相同!!!"[/b]
[b]        Reporter.ReportEvent 0,"添加用户,数据库验证","添加成功"[/b]
[b]    End If[/b]
[b]End If[/b]
Set res=nothing
Set cmd.ActiveConnection=nothing
Set Cmd=nothing

[[i] 本帖最后由 xueboy118 于 2008-5-21 16:25 编辑 [/i]]

xueboy118 2008-5-21 16:34

至于5#所说,检查点不能用代码生成,那完全是错误的,那是5#没有用类似的代码实现过此功能,参照我给的用代码实现的检查点的代码,完全可以实现,无论是页面做新增、修改、删除或查询操作,我给出的数据库检查点的代码是完全可以检查出来的,具体实现主要是在代码的IF条件判断中。

xxyyzzz 2008-5-21 16:53

为什么我按楼上的总提示出错呢,对象不支持已命名参数"Cmd.CommandType “
而且到IF语句就说缺少对象”
是不是没连接成功

[[i] 本帖最后由 xxyyzzz 于 2008-5-21 17:26 编辑 [/i]]

jackymail 2008-5-21 16:58

唉,我就不该把话说得那么绝对,都是我的错,我不会用ado对象,知识浅薄,道歉。

xueboy118 2008-5-22 10:40

LZ我不知道你所用的是什么数据库,我所给的代码中的链接数据库,只适用雨SQLServer200数据库,不适用别的数据库,我又把代码另村在TXT文件中,对具体的关键的代码做了注释,你可以看看附件,附件中的代码是我以前在QTP8.2中使用过的,可以运行下去

[[i] 本帖最后由 xueboy118 于 2008-5-22 10:54 编辑 [/i]]

xueboy118 2008-5-22 10:44

[quote]原帖由 [i]jackymail[/i] 于 2008-5-21 16:58 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=974380&ptid=115200][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]
唉,我就不该把话说得那么绝对,都是我的错,我不会用ado对象,知识浅薄,道歉。 [/quote]
其实你也没有错,只是不知道而已,呵呵,谁有敢说自己知道的很多呢,我知道的也不比你多多少,相互学习嘛,呵呵

jackymail 2008-5-22 14:13

[quote]原帖由 [i]xueboy118[/i] 于 2008-5-22 10:44 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=975458&ptid=115200][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]

其实你也没有错,只是不知道而已,呵呵,谁有敢说自己知道的很多呢,我知道的也不比你多多少,相互学习嘛,呵呵 [/quote]
o
哦,我是初学者,希望前辈们多多指教。

shangguoli 2008-5-22 14:56

学习一下。

zzfhncn 2008-7-18 09:44

[quote]原帖由 [i]xueboy118[/i] 于 2008-5-21 16:17 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=974304&ptid=115200][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]
Browser("网站后台管理").Page("网站后台管理").Frame("left").Link("工作站人员管理").Click
Browser("网站后台管理").Page("网站后台管理").Frame("main").Link("添加").Click
Browser("网站后台管理").Page("网 ... [/quote]
‘这条SQL用来查询数据库中是否存在新添加的用户的记录
sql="select  *  from member  where username='"&Trim(mm)&"'"
如果这个Trim(mm)不唯一。应该怎么判断是否新增了记录,比如我现在遇到除了PK,其他字段都不唯一的表。PK是自增的值(id)。

lijian422202 2008-7-18 10:01

[quote]原帖由 [i]zzfhncn[/i] 于 2008-7-18 09:44 发表 [url=http://bbs.51testing.com/redirect.php?goto=findpost&pid=1021819&ptid=115200][img]http://bbs.51testing.com/images/common/back.gif[/img][/url]

‘这条SQL用来查询数据库中是否存在新添加的用户的记录
sql="select  *  from member  where username='"&Trim(mm)&"'"
如果这个Trim(mm)不唯一。应该怎么判断是否新增了记录,比如我现在遇到除了PK,其他字段都 ... [/quote]

其实要想做还容易,只是比较傻而已,先执行一次count(*)保存到变量中去,新增完成再count(*)一次,在IF 后一次count减前一次count等于1就OK了

zzfhncn 2008-7-18 10:45

回复 15# 的帖子

感谢楼上,这的确是一种解决方法。不知道还有其它的方法么?

[[i] 本帖最后由 zzfhncn 于 2008-7-18 11:55 编辑 [/i]]

heqingbluesky 2008-7-18 10:58

Study again.
页: [1]
查看完整版本: 急!关于数据库检测点的问题