51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4434|回复: 18
打印 上一主题 下一主题

当我们要检查页面上wr不认识控件中的数据的正确性的时候,该怎么办?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-3-3 11:13:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
因为wr有些控件不认识,例如grid,对于一些页面上的数据我们不能通过工具检测,我想可不可以这样做?
写一个dll,实现拷屏功能,并保存起来,dll的传入参数是这个图存放路径和图名称。

然后在wr中当要检查页面上数据是否正确的时候,就调用这个dll,先把屏幕拷下来,存放在一个地方,测试完成后,再看这个图查看数据是否正确。

不知道那位高手能写一个能实现拷屏的dll文件。不胜感激,还有如果那位能有更好的办法,也可以说出来。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
发表于 2005-3-3 11:47:01 | 只看该作者
这样做和image checkpoint有什么区别?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2005-3-3 12:11:31 | 只看该作者
这样做明显是行不通的,拷屏后的数据又如何区下来?
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2005-3-3 12:11:41 | 只看该作者
这样做明显是行不通的,拷屏后的数据又如何区下来?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-3-4 11:35:12 | 只看该作者
to:shyfish
image checkpoint要先录制正确的图,才能做比较。我这样不需要先知道正确的图是什么样子,只需等脚本回放完后,自己再去检查拷屏的图中的数据是否正确。
to:肚皮
拷屏后数据的正确性是不能够取下来的,当然这个也有避短,不能完全自动化。我只是想在脚本回放完后,查看在当时这个页面上的数据是否正确,如果错了我也知道是怎么回事,并不需要再把这个数据取下来做什么事情。
当然如果能取下来更好,但这也是没办法啊!

我现在就想知道怎么写这个拷屏的dll文件,或者function也可以?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2005-3-4 12:31:35 | 只看该作者

一个简单的DLL

从CSDN上找了段代码,写了个简单的DLL,看看符不符合你的要求:
DLL export:
extern "C" __declspec(dllexport) BOOL CopyScreen(const char* dir, const char* name);
导出函数是这样定义的(就这一个)
需要传入两个参数:dir,就是目录,如"C:\\",name,如“wr",文件名,默认存成bmp格式,不能自己加后缀名,调用后就会复制当前屏幕内容(整个屏幕的),存成:C:\\wr.bmp
DLL开发环境:VC6.0 + WIN2000EN

使用步骤:
1、把这个DLL复制到系统目录下,或者在系统能找到的目录,比如winnt\system32目录下
在WR中这样使用:
extern int CopyScreen(in string, in string);
load_dll("CopyScrDll.dll");
CopyScreen("C:\\", "wr");
unload_dll("CopyScrDll.dll");
这样就可以了

如果有问题可以再问我

[ Last edited by shyfish on 2005-3-4 at 12:35 ]

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2005-3-4 12:36:48 | 只看该作者
还有,如果更改了DLL的名字,WR脚本中的load也要作相应的改变
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2005-3-4 12:44:30 | 只看该作者
高手!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2005-3-4 13:34:50 | 只看该作者
非常感谢,我先试一试
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2005-3-4 13:44:17 | 只看该作者
太感谢shyfish了,非常成功
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2005-3-4 14:38:51 | 只看该作者
winrunner不能识别的如gird控件 ,可以试试用虚拟对象来识别它,7.6版本在tools->virtual object wizard ,它的物理属性以在屏蔽中的x,y位置来标识的
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2005-8-14 13:11:35 | 只看该作者
不错,不错。好东西,大家要收藏
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2005-8-25 10:45:01 | 只看该作者

wo顶顶顶顶顶

不错,我也顶一下
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2005-9-4 15:46:25 | 只看该作者

好贴

强顶!!感谢各位高手阿
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2005-9-5 11:13:47 | 只看该作者

shyfish请求你加我为好友

msn:super_zhch@hotmail.com
qq:63212000
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2005-9-5 11:15:52 | 只看该作者

wss123 的方法,我们不认同!

在实际的项目中要的是稳定性,界面不可能一直不变!所以虚拟的东西我们建议不能用!
回复 支持 反对

使用道具 举报

该用户从未签到

17#
发表于 2006-3-4 14:08:45 | 只看该作者
不需要写dll吧 win_capture_bitmap不就行了!搞这么负杂
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2006-3-10 13:09:39 | 只看该作者

请加我!

我是个初学者,希望各位高手多多指教。
我的MSN:tansun1205@hotmail.com
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2006-3-12 22:52:23 | 只看该作者

我们要检查页面上wr不认识控件中的数据的正确性的时候,该怎么办?

obj_get_text ( object, out_text );
win_get_text ( window, out_text );
用这两个函数可以获取数据,但长度有限制。如grid数据多不可能完全得到
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-26 02:38 , Processed in 0.082052 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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