51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5676|回复: 26
打印 上一主题 下一主题

[原创] 急,急,急,一个困扰我很久的问题!

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-6-8 16:09:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
场景:在一个查询页面中,首先输入查询条件,查询出来的数据显示在该页的datagrid中,我想要把datagrid中显示的数据先取出来,那该怎么取呢?请各位热心人帮帮忙哈!我的最终目的是要检查设置不同的查询条件查询出来的记录是否正确。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-6-8 17:07:37 | 只看该作者

一定要用这种方法验证吗?

我不知道怎么导出来,但是想到了两种方法验证查询功能:
1.用Sql查出满足条件的数据个数,再看datagrid里的数据的个数是否一致
2.用你的体统分别做出满足条件的&不满足条件的数据,再看它们是否按规则显示在datagrid里面

(如果数据少你可以截屏记录,如果数据多对比不是很复杂吗?)

新手上路
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-6-8 18:02:24 | 只看该作者
datagrid中的数据倒是可以设置表检查点,但是关键是设置表检查点,当要检查表中的所有数据时,无法参数化呀,因为设置不同的查询条件(把查询条件参数化)查询出来的记录是不同的。且也不能证明你查询出来的数据就一定是正确的(因为有可能程序中的某个条件为进行判断导致结果不正确),所以这个没法判断的呀。真的不知道怎么弄哟,xdjm们帮帮忙哈!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-6-9 00:57:50 | 只看该作者
这个问题还真是比较复杂呢。
那你只能知道他源代码是怎么写的数据库查询语句,然后自己预先在数据库把值查出来,条件组合不多的情况下可以全部都做,组合多可以用正交组合一下。
本人也是刚学习自动化工具
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-6-10 11:54:08 | 只看该作者
QTP测试好迷茫啊.
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-6-10 16:32:08 | 只看该作者
sdlkfj6

1.  参考数据库测试的方案,让QTP直接连接到数据库,然后取出相应的值,并将这个值输出到DataTable中

2.  查询后,取得相应DataGrid中的数据,对比第1步取出的数据,若一致返回True,不一致返回False
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-6-11 09:03:50 | 只看该作者
to gotolife
能告诉我怎样取得datagrid中的数据么?我现在就是不知道怎么从datagrid中取数据,其录制的datagird对象属性中根本就没有显示的数值这一项。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2007-6-11 11:53:30 | 只看该作者
在线等哈,希望知道的朋友告知一下哈,非常感谢啊!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-6-11 15:37:08 | 只看该作者
我们的工作也主要是比较数据库的内容是否一致。
我们使用的是Output CheckPoint的方法,把要检查的内容输出到datatable中,这种方法不可以吗?
例如   
Browser("標準下体保険料試算").Page("標準下体保険料試算_2").Frame("BODY_FRAME").WebTable("CLASS").Output CheckPoint("CLASS")
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2007-6-12 11:42:02 | 只看该作者
to haoxiang
你这种是输出单个的值,但是datagrid中相当于是一个表格的全部内容,有很多行很多列而且还有分页,我想问一下,怎么设置Output checkpoint使其输出是一个表格的形式。
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-6-12 13:07:20 | 只看该作者
我遇到和你相同的问题。
我现在的经验告诉我,你可以把表格的所有内容输出到一个表的格子里。
如果你想把表格的所有数据输出,我试过,不行,最多输一行的。因为你要为每一个输出值做一个输出的地方。
所以,建议在案例中只检查一下一行的记录,剩下的可以统计一下记录的条数。
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2007-6-12 23:22:48 | 只看该作者
完全可以实现: 1你输入的查询条件一定和输出有关系(输出正确的情况下).
     2.在你查询到的输出datagrid里做text area output value.取得的值会自动放到qtp的datatable里.然后从中取得这些值依次和你的输入值比较就可以了.very easy
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2007-6-12 23:39:00 | 只看该作者
不要从DataGrid里取值,直接从数据库里取,取完了放到DataTable中,

然后在把这些数据依次填入到搜索框中进行搜索,然后再检查搜索后的结果,

并把这个结果和输入的数据进行检查,若一致则返回True
回复 支持 反对

使用道具 举报

该用户从未签到

14#
 楼主| 发表于 2007-6-13 15:52:33 | 只看该作者
to yhzmw
你说的这种方法不可行哈,因为根本都不支持text area output value,只支持standed output value,打tabase output value,XML output value几种输出类型
回复 支持 反对

使用道具 举报

该用户从未签到

15#
 楼主| 发表于 2007-6-13 15:58:45 | 只看该作者
to gotolife
你说的“不要从DataGrid里取值,直接从数据库里取,取完了放到DataTable中,

然后在把这些数据依次填入到搜索框中进行搜索,然后再检查搜索后的结果,

并把这个结果和输入的数据进行检查,若一致则返回True

你说的把数据依次填入到搜索框中进行搜索,是手工实现还是编写代码哟,如果是编写代码实现,能否给个案例看看,谢谢!
回复 支持 反对

使用道具 举报

该用户从未签到

16#
 楼主| 发表于 2007-6-14 10:45:30 | 只看该作者
怎么没人回答我,自己顶一下
回复 支持 反对

使用道具 举报

该用户从未签到

17#
发表于 2007-6-14 11:28:44 | 只看该作者
用GetCellData()
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2007-6-14 17:47:31 | 只看该作者
sdlkfj5
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2007-6-14 17:48:21 | 只看该作者
很抱歉,我不知道,我要学的还有很多啊
回复 支持 反对

使用道具 举报

该用户从未签到

20#
 楼主| 发表于 2007-6-15 09:35:11 | 只看该作者
to danmy
用用GetCellData()好麻烦哟,关键是数据量比较大阿,而且要是datagrid中有翻页的情况呢就更麻烦有没有简单一点的方法。顺便问一下哟,datagrid中使用的翻页是数字的(比如有5页,则在datagrid左下角显示的是1 2 3 4 5 ),对于这样的分页怎么得到它的页数呢?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-22 19:45 , Processed in 0.106408 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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