51Testing软件测试论坛

标题: 关于对.NET第三方控件的测试问题 [打印本页]

作者: lantianwei    时间: 2009-7-9 17:12
标题: 关于对.NET第三方控件的测试问题
现在测试中遇到一大堆的.NET第三方控件,用ST很难搞定,听说QTP号称支持,不知道大家有测试过相关的东西。需要说明的是被测软件是C/S架构的。听说自己写扩展插件是可以实现对第三方控件的操作的,不知道哪位朋友做过相关的东西,分享点经验吧!
作者: f84248860    时间: 2009-7-9 17:34
是.NET Winform吗?

Try testadvantage. 但是需要License,买吧,其实不贵。
作者: lantianwei    时间: 2009-7-9 17:53
testadvantage啥东西?
我现在的情况是用QTP9.5安装.NET的插件 目前是识别为SWFOBJECT
作者: f84248860    时间: 2009-7-9 17:58
那就对了,SCS这种控件以后项目里面会用的越来越多的。

开个专题讨论下吧,我用9.2做这个项目相当吃力。
作者: liujinkui    时间: 2009-7-10 10:37
<<QTP 自动化测试实践>>    讲了一点.net插件 测试.NET Windows Forms 控件
你可以在网上查查资料或到书店翻一翻
作者: wuei9090    时间: 2009-7-10 11:25
QTP对第三方插件的支持很弱智的

我听见第三方插件就想吐... 想别的招吧
作者: lantianwei    时间: 2009-7-10 14:00
标题: 回复 5# 的帖子
刚翻了这书,提到的很少,有的也只是帮助文档里的一些东西。
作者: lijinshui    时间: 2009-7-10 15:04
标题: 回复 7# 的帖子
想都不要想在书上找答案,要是书上有的话HP的人早就搞定了
第三方插件范围太广,没有统一的标准,所以支持的力度不够,但是我觉得目前为止只有通过对象编成的方法了,我现在的界面上按钮90%都是第三方插件开发的,还是可以解决的,
作者: lantianwei    时间: 2009-7-10 15:39
标题: 回复 8# 的帖子
你指的编程是用些键盘模拟 坐标实现呢 还是自己写.NET插件的?
作者: lantianwei    时间: 2009-7-10 15:42
其实QTP在第三方对象这方面做的还是不错的,起码提供了CustomServer这种机制来支持对他们的操作 像ST啥都没提供
作者: lijinshui    时间: 2009-7-10 16:34
标题: 回复 9# 的帖子
好多人都在说自己写.NET插件,我不知道如何写
我就是用OBJECT SPY来捕获这个控件,然后分析它的各个属性,得到它唯一的特征属性,然后再看看它有无提供一些操作的函数或者方法,一般是如果这个控件有OBJECT这个属性的话,就好办了,通过OBJECT属性是可以操作它自带的函数或者方法的,我不知道你那里是咋的情形
作者: peterz    时间: 2009-7-10 16:40
原帖由 lantianwei 于 2009-7-10 15:42 发表
其实QTP在第三方对象这方面做的还是不错的,起码提供了CustomServer这种机制来支持对他们的操作 像ST啥都没提供

还没解决啊。
作者: lantianwei    时间: 2009-7-10 17:18
标题: 回复 11# 的帖子
我的情形要复杂的多
首先这些第三方对象是复合对象 但QTP把它认为一个对象 所以根本无法操作到其子对象 我看过该对象的公共接口 没有可以操作到的方法 如果想实现 可以通过QTP提供的CUSTOMSERVER机制 但因为公司不可能为一个小产品的自动化去买一个测试工具 所以我只能选择我们已有的ST 而我现在要做的就是要用C#写测试接口 然后用C++转化 再在ST中调用 看着好复杂 哎。。。还好公司只让我先做个Research 如果成本太大 就只能放弃了

[ 本帖最后由 lantianwei 于 2009-7-10 17:20 编辑 ]
作者: lantianwei    时间: 2009-7-10 17:21
标题: 回复 12# 的帖子
不容易解决阿。。。
你的官衔加的很快嘛!
作者: wuei9090    时间: 2009-7-10 17:27
原帖由 lantianwei 于 2009-7-10 17:18 发表
我的情形要复杂的多
首先这些第三方对象是复合对象 但QTP把它认为一个对象 所以根本无法操作到其子对象 我看过该对象的公共接口 没有可以操作到的方法 如果想实现 可以通过QTP提供的CUSTOMSERVER机制 但因为公司不 ...



这个跟我现在的太像了  QT做的图形界面  用QTP的话就能识别出最外层一个对象 里面子对象啥都不认识...
现在被折磨的太痛苦了...网上找了些其他的测试工具 可资料都太少 不好解决啊...
作者: wtucel    时间: 2009-7-10 17:48
也许不是QTP不能识别,而是QTP根本就没有hook到这个对象。
如果你的程序是通过一个bat来调用的,或者由其他的包来调用,那可以就会出现这种问题。
因为被测程序在启动时并没有加载QTP中hook的dll文件,可以手工加载试试。
Copy the file jvmhook.dll from the QTP folder to the active  bin folder, which is always in the library path.
–       In some cases (most Eclipse applications) the JVM arguments are in an ini file.
–       If arguments are not in a batch or an ini but in the launching .exe, only the second option can be used.
作者: mklodoss    时间: 2009-7-10 18:29
希望高手出来解决下。
作者: lantianwei    时间: 2009-7-10 19:52
标题: 回复 16# 的帖子
不是java程序,所以不存在你说的问题
作者: lantianwei    时间: 2009-7-14 09:59
有没有了解QTP中的CustomServer里的SourceControl机制的阿?怎么获得这个对象的?
作者: heqingbluesky    时间: 2009-7-14 17:08
我们公司也遇到这样的问题,只能把这些对象识别成一些Dialog,然后用鼠标模拟操作。所以每次跑将近700个脚本,都有一些脚本会失败(对象不能正确识别)。

那位TX可以解决,期待一下。
作者: zzqt_7    时间: 2009-7-17 17:31
qtp的对象识别确实存在一些硬伤!

.net控件的识别是可以实现的 就是有的时候会莫名其妙的失效 产生对象不识别的情况!

而且14天的试用期 也是一个麻烦事!有钱就搞一个License 没钱就Ghost!
作者: lantianwei    时间: 2009-8-3 17:53
终于找到了在ST中的解决方案:
Record Class+alias机制
作者: shanxi    时间: 2009-8-3 17:59
ST是Borland SilkTest吧
作者: lantianwei    时间: 2009-8-3 21:10
标题: 回复 23# 的帖子
呵呵 LS正解!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2