请教一下斑竹各位(一个比较烦人的问题)
请教一下斑竹各位:我想读取一个单格的数据但特殊的是,这个表格不是一个单独的EXCEL表.而是软件中的特有表格,是在本软件中的表,是报表格式的。比如说:我测试的软件是一个统计报表管理系统,它的查阅报表菜单下有个XXX的基本情况表。点击之后系统即会出现这张表,表格内的各数据则调入的是在对软件功能操作后产生的一些数据.而此时不知在这里想要读取单元格里面的数据该怎么办了,要怎么样定位这个表?或是不用定位????????请求指点
[ 本帖最后由 村上舞!舞!舞 于 2005-11-28 18:47 编辑 ] 请问各位有办法吗????上面我说的还有一点我没有说清楚,就是在我在被测试的软件中打开某一张表时,用过ROBOT读取控件属性的方法,想试图去读取某个单元格,但是那是行不通的,因为在我读取任何一个格子的时候,它会把整张表都当做一个大的控件来读取。从而得不到任何值 请问各位有办法吗????上面我说的还有一点我没有说清楚,就是在我在被测试的软件中打开某一张表时,用过ROBOT读取控件属性的方法,想试图去读取某个单元格,但是那是行不通的,因为在我读取任何一个格子的时候,它会把整张表都当做一个大的控件来读取。从而得不到任何值 http://bbs.51testing.com/viewthread.php?tid=20330&fpage=1&highlight=%2B%BA%A3%C1%FA 我想没有这么简单呀 !您贴上去的贴子我也看过了,那个脚本对我这里没有什么作用呀:
不知道怎么样可以贴图上去,我想我还是贴一幅图会比较清楚一点 这是我跟据 ilovejolly版主给的贴子里的办法做出来的:
Window SetContext, "Caption=统计报表系统", ""
GenericObject Click, "Class=AfxWnd;ClassIndex=2", "" ----- 指定表????????
'定位到修改的单元格
result=SQASetProperty("Type=Generic;Class=AfxWnd;ClassIndex=2", "Row", 1)
result=SQASetProperty("Type=Generic;Class=AfxWnd;ClassIndex=2", "Col", 1)
'修改数据
result=SQASetProperty("Type=Generic;Name=MSF", "Text", "asdfasdf")
这是 ilovejolly版主给的贴子里的原代码:
StartApplication """C:\Documents and Settings\liuchao1\桌面\demo.exe""" ----- 指定表
Window SetContext, "Type=Window;Name=Form1", "" ------指定表
'定位到修改的单元格
result=SQASetProperty("Type=Generic;Name=MSF", "Row", 1)
result=SQASetProperty("Type=Generic;Name=MSF", "Col", 1)
'修改数据
result=SQASetProperty("Type=Generic;Name=MSF", "Text", "asdfasdf")
两个地方完全不同的是我要测试的软件是统计报表系统,而它打开一个表后会出现这个表连同它的编辑界面,这同EXCEL有点相似,但是在这里的整张表格其实就是一个大的控件。那么我想我现在遇到的问题是:
我首先要怎么样指定这个表?因这这张表毕竟是在软件里面被打开的。流程:打开统计报表管理软件———选择查阅报表菜单———打开XX表。
因为这不能够像读取EXCEL表中数据那样:1.首先定义Excel文件所在地 2.定义工作表的名称 ............
这就为难了,因为我不能够像定义EXCEL文件所在地那样去定义这个表的所在地???????
补充一点:我这个系统里的表其实就是一个嵌入的用友的报表控件.
请各位可以加以指点一下,不知我有没有说的明白
[ 本帖最后由 村上舞!舞!舞 于 2005-11-29 18:24 编辑 ] 我只能提出一些参考的思路,上面的帖子是类似datagrid的单元格取值,你还可以考虑针对excel类似的处理 我想有很多问题确实还没能够想出办法来解决。我也思考过了,用EXCEL的方法还是无从下手。
这个问题我想并不很简单,如果有哪位做过的话,不妨在这里多多讨论一下,如果能够解决的了,我想对大家的水平都会有很大的提高…………谢谢!!
[ 本帖最后由 村上舞!舞!舞 于 2005-12-1 20:40 编辑 ] 这个问题之所以不简单是因为每个表对象都不一样,就算是同一语言开发的不同的表都会有不同的属性,所以不可能存在一个方法拿出来你改几个名字就可以了
这个问题问得好!
顶一下!
页:
[1]