51Testing软件测试论坛

标题: QTP Test Case接力!期望想深入研究QTP测试架构及方法的朋友共同参与! [打印本页]

作者: 梦醒十分    时间: 2006-7-11 12:32
标题: QTP Test Case接力!期望想深入研究QTP测试架构及方法的朋友共同参与!
为了研究利用QTP进行测试的合理架构,同时也为了备战QTP SP的考试。

决定把QTP plus中的例子代码进行深入研究并写成Test Case。

“QuickTest Plus安装路径\ScriptsAndTests\Flight_Samples”

希望有兴趣的朋友共同完成此Case。

我刚写了其中的Share Actions和Order window上的第一个case。

也希望版主关注此贴,提供建议。
作者: pcl2004_27    时间: 2006-7-12 10:08
顶。。。。。

好想法!
作者: 梦醒十分    时间: 2006-7-12 11:12
谢谢版主的支持!
本来想把case写成中文的,怎耐本人的打字速度。。。
所以share部分写完就改成英文的了。

还是写点小总结一下吧!
刚开始学自动化工具的时候,用的是Testcomplete。
整个工程就只写在一个Unit,很难维护。

1:后来慢慢地才知道,要利用模块。

2:初学QTP的时候,总认为它是一个开发工具。一遇到动作就先想到写函数调用。

    后来通过研究例子代码,把思想从函数概念转向了Action。

3:理解了Reuseble Action后,代码去掉了大量冗余。就像case的Share部份。

4:我认为QTP最关键的一个函数,而且是用的最多的,还比较难理解与掌握的(主要是input/output parameter)就是:RunAction.理解了它,就基本清楚了模块之间的关系结构以及它们之间参数的传递。

    这里还提一点:要弄清楚Test setting 中的parameter与Action parameter之间的区别与联系。

    如有时间我还会接着写,写到哪个case,遇到什么知识点,会及时与大家分享。

希望朋友们共同参与,在你写的Case中署上大名。
作者: xiaonan    时间: 2006-7-12 11:36
呵呵,支持
作者: QA_BAY    时间: 2006-7-12 13:08
原帖由 梦醒十分 于 2006-7-12 11:12 发表
谢谢版主的支持!
本来想把case写成中文的,怎耐本人的打字速度。。。
所以share部分写完就改成英文的了。

还是写点小总结一下吧!
刚开始学自动化工具的时候,用的是Testcomplete。
整个工程就只写在一个U ...

不错,学得很细.支持你的做法.
看了你的CASE,写得非常好!
parameter与Action parameter之间的区别与联系,可以参考一下HELP或者以前其它人发过的贴,
很容易学会.
继续努力!
作者: 梦醒十分    时间: 2006-7-12 14:44
谢谢各位版主都来捧场,
我所有的自动化工具知识(包括能Passed LR SP和即将考的QTP SP)
都来自你们网站,所以我有义务贡献自己所学,
也希望将来能有自己的贴子进精华。

更希望能得到高手们的指点。

BTW,现在是Scripts>>Case。
等写完Case(如果Case足够清晰的话),反过来只看Case来编录出22个Script模块,并batch通过,我想这是达到QTP中级水平了吧,你们说是不是呀?

[ 本帖最后由 梦醒十分 于 2006-7-12 14:54 编辑 ]
作者: volvoo    时间: 2006-7-13 12:44
标题: 我的一点看法
我认为action本身相当于一个普通的函数,输入,输出参数就跟普通函数用法一样,没有什么很特别的地方
qtp工具本身缺陷导致了很多地方代码不优美,比如不能精确的识别tree控件,table控件 ,操作起来有点别扭,
还有数据表dataTable的问题,每一个action都有自己的dataTable,但是通过runaction把他们串起来组织成一个测试流程的时候,所有的action 关于 datatable的操作 只要不是操作本action 对应的dataSheet就有问题
比如 dataTable.GetDataSheet("***"),这句话就有问题,只能借助vbscript 实现,代码不优美
  
还有就是同步点的问题,等待某个窗口出现只能用时间来等,这里有应该设置一个同步点,同时设置一个最大的等待时间就好了,否则代码运行速度很慢,用 窗口***.exsit来判断也慢

9.0才增加了语法检查的功能,8.2哪里错了只有等到运行到那里才知道

vbscript的语法我太难容忍了,居然没有数据类型,变量不用声明就拿来用 怀念c,c++,c#,java那个开发感觉
作者: xiaonan    时间: 2006-7-13 13:09
同步点,有设时间的啊
作者: cathyk    时间: 2006-10-27 14:25
thanks
作者: seachild    时间: 2006-10-30 12:07
呵呵。。。同意7楼的观点。。。真的用QTP来做项目的时候,发现QTP比较适应小中型项目(中型项目还要看具体情况),开发脚本语言本身就是弱语言类。。。太多不好用的地方。。。但任何工具都有利弊和其适应范围,QTP对于小型项目来说还是比较优秀的,而且够傻瓜,容易上手。。。
作者: 木乃伊    时间: 2006-10-30 15:43
楼主加油阿,顶
作者: qrz2000    时间: 2006-10-30 19:12
关注中,我已经半年没有用qtp了,要忘了差不多了.
作者: fengyun407    时间: 2006-10-30 20:17
原帖由 volvoo 于 2006-7-13 12:44 发表
还有就是同步点的问题,等待某个窗口出现只能用时间来等,这里有应该设置一个同步点,同时设置一个最大的等待时间就好了,否则代码运行速度很慢,用 窗口***.exsit来判断也慢, ...



请问如何设置“同时设置一个最大的等待时间”,经常需要等待很长时间,十分麻烦。有什么方式可以代替“窗口***.exsit来判断也慢”,否则运行速度慢得吓人??
希望高手请教!!!!!
作者: walker1020    时间: 2006-12-2 19:20
梦醒十分 在设计Test Case 时 能想到要充分利用QTP,值得我们学习和借鉴。
作者: volvoo    时间: 2006-12-4 07:19
标题: 同步等待这样解决
首先设置同步等待时间为1秒,或者更小,
等待窗口出现,或者判断窗口是否出现
do
  bExist=CBool(***.Exist)
  ***
loop while bExist

if bExist then
***
end if
这样执行效率很高了,如果设置快了,容易出现界面和脚本脱节
作者: abens0426    时间: 2007-3-26 19:05
晕,级别太低不能下载。。。。
作者: yabest    时间: 2007-3-27 14:53
Action使用起来远不如函数灵活方便,它只是作为一种简单直观傻瓜式的Case代码组织方式而设计的
我们都是用三层函数结构来组织测试脚本,并将三层函数都写在库文件里,便于各个测试模块共享使用。
作者: zxf0089    时间: 2007-4-2 16:36
xls文档没有权限看,楼主可不可以把范围放大点?我们公司在用,但是我是个初学者,希望学习楼主的精华,少走弯路,thanks。
作者: julialove    时间: 2007-4-3 11:47
3Q
作者: worklion    时间: 2007-4-6 10:35
我也来看看
作者: x00ganlu    时间: 2007-4-19 15:13
sdlkfj8 顶铁要分
作者: kursk    时间: 2007-4-27 21:48
看了LZ的帖子很受启发

但是调用action ,而不是function ,强调action的功能比function强——这点不敢苟同
我觉得代码结构应该拆分得细些好,这样复用性才高,而function的复用性要好于action。

另外可能是我不太愿意使用QTP所提供的功能,如datatalbe、parameter,甚至是object  repository(我觉得QTP的object spy 的功能才是最有用的,甚至认为当object spy强大到一定程度,object repository可能会被省略掉)

我觉得应该把QTP作为一个测试脚本开发工具,提供编程和运行的环境。因为软件的升级太快了,今天有这个功能、明天有那个功能,学不完。但是其实都是可以依靠脚本实现的,所以不如直接学编程更快捷

[ 本帖最后由 kursk 于 2007-4-29 13:21 编辑 ]
作者: lyscser    时间: 2007-4-27 22:32
vbscript的语法我太难容忍了,居然没有数据类型,变量不用声明就拿来用 怀念c,c++,c#,java那个开发感觉


哈哈,有点同感
作者: mybiao    时间: 2007-5-21 17:38
呵呵,支持
作者: FlyingBug    时间: 2007-5-25 10:20
回帖感谢
作者: premiumdue    时间: 2007-5-29 15:57
标题: 回复 #1 梦醒十分 的帖子
学习中`````
作者: loho1968    时间: 2007-6-18 12:15
rhf rhf
作者: james.zhong    时间: 2007-6-27 15:17
刚开始学习QTP,谢谢指点!
作者: bo流倜傥    时间: 2007-7-4 17:37
study now
thank you!
作者: garyyes    时间: 2007-7-14 03:28
原帖由 volvoo 于 2006-7-13 12:44 发表
我认为action本身相当于一个普通的函数,输入,输出参数就跟普通函数用法一样,没有什么很特别的地方
qtp工具本身缺陷导致了很多地方代码不优美,比如不能精确的识别tree控件,table控件 ,操作起来有点别扭, ...

Volvoo是少有的QTP高手!^_^
十分同意Volvoo所说,其实QTP本身的许多设计和特点,只是为了易学易用!但是当你要为一个project做几百个test cases的script,写上十万行的代码,你会发现QTP的action,object repository等就是reuse和maintain的绊脚石!
QTP对某些web object并没有提供很好的接口支持。Web Table就是最麻烦的一个。因为当遇到动态页面时,Web table的Index随时可能改变,会导致不能识别该web table及里面的objects。
作者: ppent    时间: 2007-8-7 21:36
学习
作者: 杀人跳舞    时间: 2007-8-9 10:46
谢谢楼主分享
作者: mjji23    时间: 2007-8-14 15:08
不断学习中
作者: 看雪时节    时间: 2007-8-29 11:40
LZ很强
作者: 看雪时节    时间: 2007-8-29 11:41
还得继续学习
作者: Doctorstream    时间: 2007-9-4 20:05
看了很有用
作者: allenzgw    时间: 2007-9-26 14:36
梦醒时分,总是很猛
作者: meijiao    时间: 2007-9-26 17:50
希望自己也能尽快成为QTP的熟练使用者,向大家学习
作者: 郁金香    时间: 2007-10-8 15:28
标题: 三层函数结构如何来组织脚本
原帖由 yabest 于 2007-3-27 14:53 发表
Action使用起来远不如函数灵活方便,它只是作为一种简单直观傻瓜式的Case代码组织方式而设计的
我们都是用三层函数结构来组织测试脚本,并将三层函数都写在库文件里,便于各个测试模块共享使用。

对于你说的关于三层函数结构来组织测试脚本我不是很明白,能否麻烦你能举个例子来说一下吗?
作者: zhmiss    时间: 2007-11-29 15:09
呵呵,学习学习!
作者: lantianwei    时间: 2008-1-6 15:21
不错,很难找到这么完整自动化测试用例模版,先谢谢了!
对于ACTION我个人认为,它只有和TD/QC结合在一起使用时才可以发挥其优势.
对本用例模版觉得有一个地方做的不够:对用例的运行控制做的不够!
作者: wuzhiyongnihao    时间: 2008-1-16 16:45
标题: 回复 1# 的帖子
support firstly
作者: heqingbluesky    时间: 2008-1-22 11:50
Test Case应该来说,写得不错.

QTP对于非标准的控件,识别能力不是很强.
作者: 暗冷夜空的风    时间: 2008-2-11 20:46
来讨论自动化测试框架吧,那个好美哦
作者: yqx    时间: 2008-4-14 10:46
楼主有心了,看了你的case后很有启发。
作者: joace    时间: 2008-4-14 17:17
多谢LZ分享这么好的经验,能让我这个QTP初学者学到不少实际的东东
作者: yoyo-happy    时间: 2008-4-15 10:13
大家加油!
作者: testman    时间: 2008-7-1 10:08
不错,非常感谢~~

任何工具都有其局限性。关键是让qtp扬长避短,不要妄想让qtp代替人去完成任何事!
作者: musicbeast    时间: 2008-7-3 15:43
自动化,完全不知道如何着手

看了楼主的奉献,似乎有所感悟!
作者: lin85210    时间: 2008-7-11 16:20
不错的分享
作者: eason08    时间: 2008-7-15 13:45
呵呵,支持
作者: daijianfeng    时间: 2008-8-7 15:15
怎么就看不懂呢
作者: jinwei6078    时间: 2009-3-1 20:56
标题: 多谢分享
高手很多啊,学习中
作者: lixudong3032    时间: 2010-11-22 09:37
谢谢共享
作者: timfung    时间: 2010-12-14 14:12
看看
作者: sophiashan07    时间: 2010-12-17 11:29
我公司2010年6月份刚在纳斯达克上市,现在要找一名自动化测试组长,薪资福利良好:

我们项目组需要招聘自动化测试组组长,职位信息如下:
1.计算机相关专业本科以上学历,熟悉软件工程师学原理;
2.软件测试相关经验3年以上,其中至少包括2年功能自动化测试经验;
3.熟悉QTP工具的使用,了解QTP原理和对象识别机制;
4.熟悉VBScript脚本语言,能进行相关自动化脚本函数的编写;
5.较强的语言表达和文档编写能力及良好的沟通技巧;
6.有金融银行基础业务知识经验、有网银业务经验为佳;
7.有自动化框架编写、设计经验和软件开发经验有团队管理经验为佳;
8.熟悉Java、J2EE 、WebSphere 、Application Serve、DB2、Oracle等为佳
9.有Unix平台的使用经验(AIX/Solaris/HPUX/Linux)为佳;
欢迎各专业人士来信探讨,谢谢:
shanjing1983@163.com
sophiashan07@hotmail.com
作者: gy168    时间: 2011-4-10 16:28
回复 3# 梦醒十分


    学习一下




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