51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 12123|回复: 68
打印 上一主题 下一主题

[原创] 各位高手请指教我,非常的着急!!!!万分感谢

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-6-20 08:47:18 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
各位前辈高手好,小弟刚刚做QTP半年,遇到了很多问题,希望大家指点我。万分感谢!

1.用QTP9.0是否可以录制command prompt中的命令,如果可以是否需要安装插件?
2.QTP的文件非常的大,是否有其他办法可以压缩成更加小的文件呢?
3.双击的录制是否需要安装插件以后才能录制呢?
4.今天录制好的能够顺利跑通的文件保存以后关电脑,第二天早上一来打开电脑就跑不了了?sdlkfj9
5.我们公司买了正版的QTP9.0安装以后需要license,但是输入以后还是不能用!不知道怎么回事情


万分感谢各位帮助,提的问题比较肤浅不要见笑!我会努力学习的!希望大家帮助我,谢谢指导!!

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

69#
发表于 2007-8-1 09:43:36 | 只看该作者

回复 #64 ivystone 的帖子

请把Window("AJSROOT1:/ジョブネット - ジョブネットモニタ")对象的属性抓个图方上来看看,另外你说的总是会变化的属性是哪个?
回复 支持 反对

使用道具 举报

该用户从未签到

68#
 楼主| 发表于 2007-7-30 10:06:58 | 只看该作者
原帖由 winfood 于 2007-7-30 09:34 发表

这段脚本里面包含了两次相差不大的操作流程,目前最快的解决办法就是把被你标为红色的代码部分用描述编程归纳一下。
可以分成两步来摸索并实现:
用描述编程来替换标记为红色的语句;
在上一步没有问题的基 ...



谢谢刘哥,我调试一下以后给你发信息!~~~sdlkfj6
回复 支持 反对

使用道具 举报

该用户从未签到

67#
发表于 2007-7-30 09:34:37 | 只看该作者
原帖由 ivystone 于 2007-7-27 12:14 发表
'JP1AJS2_Login
SystemUtil.Run "C:\Program Files\HITACHI\JP1AJS2V\bin\ajs.exe","","C:\Program Files\HITACHI\JP1AJS2V\bin","open"
Window("View").Window("ログイン").WinEdit("Edit").Type  micTab
...

这段脚本里面包含了两次相差不大的操作流程,目前最快的解决办法就是把被你标为红色的代码部分用描述编程归纳一下。
可以分成两步来摸索并实现:
用描述编程来替换标记为红色的语句;
在上一步没有问题的基础上,找到Window对象的规律性归纳一下(因为多次操作的时候窗口标题会不同,可以把相同的代码归纳成可以重复利用的);

先来做第一步,描述脚本中的对象。需要注意的是,当多个对象同时出现在一条语句的时候,从出现描述编程的对象开始其后都要用描述编程。因为从语句使用描述那一刻开始,QTP就不再从对象库里面搜索后面的对象了。
比如:
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ").WinMenu("Menu").Select "<Item 2>;<Item 2>"
如果把第一个Window对象换为描述性的,那么后面的WinMenu也许要换成描述性的才能通过。
就像这样:
Window("WndProp:=WndPropVal").WinMenu("MenuProp:=MenuPropVal").Select "<Item 2>;<Item 2>"
其中的WndProp,WndPropVal,MenuProp,MenuPropVal分别是描述Window对象和WinMenu对象的属性和属性值。因为我不知道你的程序中这些属性和属性值,这里先用符号代替了。你可以把你的对象库保存下来发给我,我可以帮你看看。

如果第一步行得通,接下来就可以把有规律的东西放在一起了。
比如:
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ").WinMenu("Menu").Select "<Item 2>;<Item 2>"
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ_2").WinMenu("Menu").Select "<Item 2>;<Item 2>"
这两次执行的语句,其实只有窗口标题不同。在第一步里面实现了
Window("WndProp:=WndPropVal").WinMenu("MenuProp:=MenuPropVal").Select "<Item 2>;<Item 2>"
那么接下来可以把WndPropVal和"<Item 2>;<Item 2>"都参数化一下,就像
Window("WndProp:=" & strWndTitle).WinMenu("MenuProp:=MenuPropVal").Select strMenuItem
这样只要每次给变量strWndTitle和strMenuItem赋不同的值就可以了。
回复 支持 反对

使用道具 举报

该用户从未签到

66#
 楼主| 发表于 2007-7-30 08:00:40 | 只看该作者
我顶阿!~~~ sdlkfj9 大家帮忙啊!~~~~

求助中~~~
回复 支持 反对

使用道具 举报

该用户从未签到

65#
 楼主| 发表于 2007-7-27 15:11:57 | 只看该作者
sdlkfj9 各位前辈高人ggjjddmm们帮忙阿!~~~~~sdlkfj9

sdlkfj9 万分感谢!~~~~~~~

[ 本帖最后由 ivystone 于 2007-7-27 15:21 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

64#
 楼主| 发表于 2007-7-27 12:14:48 | 只看该作者
'JP1AJS2_Login
SystemUtil.Run "C:\Program Files\HITACHI\JP1AJS2V\bin\ajs.exe","","C:\Program Files\HITACHI\JP1AJS2V\bin","open"
Window("View").Window("ログイン").WinEdit("Edit").Type  micTab
Window("View").Window("ログイン").WinEdit("Edit_2").SetSecure "46a8718876871fa2db5f5bc374dc78a6c0196cbe6a8e"
Window("View").Window("ログイン").WinEdit("Edit_2").Type  micTab
Window("View").Window("ログイン").WinObject("SunAwtCanvas").Type "SQA12-87"
Window("View").Window("ログイン").WinButton("OK").Click
Window("View_2").WinMenu("Menu").Select "<Item 2>;<Item 1>;<Item 2>"
Window("View_2").Window("[ジョブネット]").WinObject("SunAwtCanvas").Click 192,5
Window("View_2").Window("[ジョブネット]").WinEdit("Edit").Set "ジョブネット"
Window("View_2").Window("[ジョブネット]").WinButton("OK").Click
Window("View_2").WinMenu("Menu").Select "<Item 3>;<Item 1>"
Window("View_2").Window("実行登録").WinButton("OK").Click
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'モニタ画面
Window("View_2").WinMenu("Menu").Select "<Item 4>;<Item 3>;<Item 1>"
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ").WinMenu("Menu").Select "<Item 2>;<Item 2>"
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ").Window("検索").WinButton("ヘルプ").Click
Browser("[検索]ダイアログボックス").Page("[検索]ダイアログボックス").Sync
Browser("[検索]ダイアログボックス").Close
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ").Window("検索").WinButton("閉じる").Click
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ").Close
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'JP1AJS2_Logout
Window("View_2").WinMenu("Menu").Select "<Item 3>;<Item 2>"
Window("View_2").Window("登録解除").WinButton("OK").Click
Window("View_2").WinObject("SunAwtCanvas").Type micCtrlDwn + "d" + micCtrlUp
Window("View_2").Window("KAVV308-Q").WinButton("はい").Click
Window("View_2").Close
Window("View_2").Window("KAVV335-Q").WinButton("はい").Click
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'JP1AJS2_Login
SystemUtil.Run "C:\Program Files\HITACHI\JP1AJS2V\bin\ajs.exe","","C:\Program Files\HITACHI\JP1AJS2V\bin","open"
Window("View").Window("ログイン").WinEdit("Edit").Type  micTab
Window("View").Window("ログイン").WinEdit("Edit_2").SetSecure "46a8718876871fa2db5f5bc374dc78a6c0196cbe6a8e"
Window("View").Window("ログイン").WinEdit("Edit_2").Type  micTab
Window("View").Window("ログイン").WinObject("SunAwtCanvas").Type "SQA12-87"
Window("View").Window("ログイン").WinButton("OK").Click
Window("View_2").WinMenu("Menu").Select "<Item 2>;<Item 1>;<Item 2>"
Window("View_2").Window("[ジョブネット]").WinObject("SunAwtCanvas").Click 192,5
Window("View_2").Window("[ジョブネット]").WinEdit("Edit").Set "ジョブネット"
Window("View_2").Window("[ジョブネット]").WinButton("OK").Click
Window("View_2").WinMenu("Menu").Select "<Item 3>;<Item 1>"
Window("View_2").Window("実行登録").WinButton("OK").Click
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Window("View_2").Activate
Window("View_2").WinMenu("Menu").Select "<Item 4>;<Item 3>;<Item 1>"
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ_2").WinMenu("Menu").Select "<Item 2>;<Item 2>"
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ_2").Window("検索").WinButton("閉じる").Click
Window("AJSROOT1:/ジョブネット - ジョブネットモニタ_2").Close
Window("View_2").Activate
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Window("View_2").WinMenu("Menu").Select "<Item 3>;<Item 2>"
Window("View_2").Window("登録解除").WinButton("OK").Click
Window("View_2").WinObject("SunAwtCanvas").Type micCtrlDwn + "d" + micCtrlUp
Window("View_2").Window("KAVV308-Q").WinButton("はい").Click
Window("View_2").Close
Window("View_2").Window("KAVV335-Q").WinButton("はい").Click

[ 本帖最后由 ivystone 于 2007-7-27 12:15 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

63#
 楼主| 发表于 2007-7-27 12:10:38 | 只看该作者
原帖由 winfood 于 2007-7-2 16:20 发表

可能是那个应用程序的特点,有不少程序都是这样的。比如在MS Word中打开多个新建文档,窗口标题也是这样的。
28395

这种情况下用描述性编程要简单一些,这种方式和录制的对象不一样。比如你新建一个脚本并 ...



刘哥,现在的情况是这样的,我这个项目7月底交货,84%的测试部分和这个画面没有关系。
还有16%的内容由于不能录制画面还没有解决。
我用你的方法尝试了n遍都没有用,是不是那里我搞错了阿?昏死!~sdlkfj9
回复 支持 反对

使用道具 举报

该用户从未签到

62#
发表于 2007-7-3 14:49:16 | 只看该作者
讨论的好激烈啊
回复 支持 反对

使用道具 举报

该用户从未签到

61#
 楼主| 发表于 2007-7-2 16:45:09 | 只看该作者
原帖由 winfood 于 2007-7-2 16:20 发表

可能是那个应用程序的特点,有不少程序都是这样的。比如在MS Word中打开多个新建文档,窗口标题也是这样的。
28395

这种情况下用描述性编程要简单一些,这种方式和录制的对象不一样。比如你新建一个脚本并 ...



谢谢刘哥!我下班了,赶着去买菜,今天轮到我做饭!

明天我试试!!sdlkfj5
回复 支持 反对

使用道具 举报

该用户从未签到

60#
发表于 2007-7-2 16:20:54 | 只看该作者
原帖由 ivystone 于 2007-7-2 16:03 发表



对对对!
刘哥,我试了n遍都是这样的。
是什么原因阿?有没有什么办法啊?

可能是那个应用程序的特点,有不少程序都是这样的。比如在MS Word中打开多个新建文档,窗口标题也是这样的。


这种情况下用描述性编程要简单一些,这种方式和录制的对象不一样。比如你新建一个脚本并且在代码里面加两个语句:
'第一个语句:启动程序的语句
*********************************

'第二个语句:关闭这个新打开的程序
JavaWindow("creationtime:=0").Close

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

该用户从未签到

59#
 楼主| 发表于 2007-7-2 16:03:06 | 只看该作者
原帖由 winfood 于 2007-7-2 15:24 发表

"手工运行"就是不要管什么QTP测试工具,你先手工测试一下。没有找到合适的词儿,明白就行了sdlkfj2

先把我刚才说的需要确认的事情确认一下,就是:
打开一个被测试的程序,观察程序窗口的标题栏,关闭它 ...



对对对!
刘哥,我试了n遍都是这样的。
是什么原因阿?有没有什么办法啊?
回复 支持 反对

使用道具 举报

该用户从未签到

58#
发表于 2007-7-2 15:24:24 | 只看该作者
原帖由 ivystone 于 2007-7-2 15:18 发表



刘哥阿,我不是很清楚什么叫做手工运行。是不是不用f5的run阿?
如果是的话,在跑的时候是过不去的!(保存了以后)
在保存之前是可以跑通的。

变数字是因为保存了以后跑不通,所以我就再录制一遍。 ...

"手工运行"就是不要管什么QTP测试工具,你先手工测试一下。没有找到合适的词儿,明白就行了sdlkfj2

先把我刚才说的需要确认的事情确认一下,就是:
打开一个被测试的程序,观察程序窗口的标题栏,关闭它;
再次打开被测试的程序,观察程序窗口的标题栏
每次打开程序,是不是程序窗口的标题栏就类似:AJSROOT1:/Test-1 - ジョブネットモニタ_n呢,就是说每次打开那个n都会变化?
回复 支持 反对

使用道具 举报

该用户从未签到

57#
 楼主| 发表于 2007-7-2 15:18:02 | 只看该作者
原帖由 winfood 于 2007-7-2 15:11 发表

再确认一下你说的问题,手工运行一下被测试的程序,是不是每次程序窗口的标题都在变?
比如,第一次运行被测试程序,窗口标题显示:
AJSROOT1:/Test-1 - ジョブネットモニタ_1
关闭窗口后再次运行该程序, ...



刘哥阿,我不是很清楚什么叫做手工运行。是不是不用f5的run阿?
如果是的话,在跑的时候是过不去的!(保存了以后)
在保存之前是可以跑通的。

变数字是因为保存了以后跑不通,所以我就再录制一遍。
那个时候就会变数字了。然后故事重演,不保存就ok保存以后就又跑不通了!!!!
555
sdlkfj9
回复 支持 反对

使用道具 举报

该用户从未签到

56#
 楼主| 发表于 2007-7-2 15:14:37 | 只看该作者
原帖由 ChinYin 于 2007-7-2 15:07 发表
ding



谢谢!!感动!!1sdlkfj9
回复 支持 反对

使用道具 举报

该用户从未签到

55#
发表于 2007-7-2 15:11:07 | 只看该作者
原帖由 ivystone 于 2007-7-2 14:36 发表
问题!


我现在在录制的软件是日立公司用java开发的一个名叫jp1的软件。

其中有一个画面叫做ジョブネットモニタ

JavaWindow("AJSROOT1:/Test-1 - ジョブネットモニタ_4").JavaMenu("ファイル").JavaM ...

再确认一下你说的问题,手工运行一下被测试的程序,是不是每次程序窗口的标题都在变?
比如,第一次运行被测试程序,窗口标题显示:
AJSROOT1:/Test-1 - ジョブネットモニタ_1
关闭窗口后再次运行该程序,窗口标题变成了:
AJSROOT1:/Test-1 - ジョブネットモニタ_2

如果的确是这样,用描述编程的办法解决这个问题比较快。
假设你每次测试的时候仅打开一个被测试程序,可以这样写
JavaWindow("creationtime:=0")
但是这样描述了以后,这个窗口下属的那些对象都要用描述的才行。于是菜单就变成了
JavaWindow("creationtime:=0").JavaMenu("name:=ファイル")
回复 支持 反对

使用道具 举报

该用户从未签到

54#
发表于 2007-7-2 15:07:37 | 只看该作者
ding
回复 支持 反对

使用道具 举报

该用户从未签到

53#
 楼主| 发表于 2007-7-2 14:50:27 | 只看该作者
忘了向各位前辈报告了モニタ(monitor)是监视器的意思。

小弟电脑不好,不知道有没有用!请指教!万分感谢!sdlkfj9

达人快来啊!~~
回复 支持 反对

使用道具 举报

该用户从未签到

52#
 楼主| 发表于 2007-7-2 14:36:44 | 只看该作者
问题!


我现在在录制的软件是日立公司用java开发的一个名叫jp1的软件。

其中有一个画面叫做ジョブネットモニタ

JavaWindow("AJSROOT1:/Test-1 - ジョブネットモニタ_4").JavaMenu("ファイル").JavaMenu("閉じる").Select

JavaWindow("AJSROOT1:/Test-1 - ジョブネットモニタ_5").JavaMenu("ファイル").JavaMenu("閉じる").Select

JavaWindow("AJSROOT1:/Test-1 - ジョブネットモニタ_6").JavaMenu("ファイル").JavaMenu("閉じる").Select

在没有装java add-in的时候画面没有办法录制,装了以后就可以录制了。

如果不保存可以跑通,但是保存以后或者重新打开QTP以后那个ジョブネットモニタ以后的什么值就会不断的往上长。

所以不能Run了,每次Run都出错!~

那位大哥帮帮我这个小菜鸟吧!!!sdlkfj1
回复 支持 反对

使用道具 举报

该用户从未签到

51#
 楼主| 发表于 2007-6-27 16:00:21 | 只看该作者
原帖由 winfood 于 2007-6-27 15:40 发表

整个注册过程是一种常见的技术
通过你的系统硬件(常常是硬盘)信息生成Locking Code;
把Locking Code交给供应商;
供应商根据Code和一定算法返回一个注册号;

Locking Code不仅仅因机器而异,服务器硬 ...



难为情!~~~~sdlkfj1 谢谢刘哥!!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-27 10:31 , Processed in 0.086887 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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