这一年发生了很多转折,如上一篇文章(【2013】沉淀总结,新的开始)提及的,准备写一系列小文,来总结和怀念我用过的QTP。
  很多人早建议我可以写教程,之前总是害怕误人子弟,不忍下手。如今自动化测试工具越来越多,由于成本、兼容、自由度等影响,各公司选择自动化测试工具也越来越不同,不过如果你是个新手,QTP仍然是比较简单,容易上手的工具之一,相对的资料也会比较多一些。
  市面上QTP的教学类书籍也比较多,如赵旭斌的《QTP自动化测试领航》,如印度QTP大牛写的《QTP自动化测试权威指南》,书中都已经很详细的介绍了QTP各个功能的使用方法。
  所以,我不打算写成“入门贴”,不会写成“从零开始学QTP”,新手教学网上和书店的确已经写烂了,基本的编程思路和简单的语法知识还是需要大家自备。不是写这个工具怎么用,而是写利用这个工具能做什么。我会以一些常用的方法、技巧和总结为主,还有一些方法的对比评测,以及我在实际工作中的一些使用习惯,一些我觉得还可以如何使用的猜想,以供大家学习参考之用,所有观点只代表我个人观点,绝非标准答案,各位读者如有兴趣可参与讨论,或结合实际用于自己的项目中。
  如有写的不对的地方,或是你有更好的方法,请告诉我,Email:cydblack@163.com。
  PART – 01
  BEGINNING
  一拖拖了二十几天,一个字也没写,不是不想写,真心不知道怎么起这个头。
  现在QTP,已谈不上什么自动化测试工具的代表,随便找个自动化测试工具都能替代它的功能,所以不用讨论“什么什么工具比QTP好”之类的问题了,有人需要,而且我正好会那么点,写了,大家结合自己的项目,各取所需吧。
  首先回答几个网友常见的问题:
  哪里有下QTP啊?能否发个安装包给我?发安装包算了,不现实,上G的安装包我得不关电脑来上传了。现在各大测试类网站都能找到,比如51testing论坛QTP版块的置顶帖,所以不要在问这个问题了。
  有没有中文补丁?有肯定有,但不推荐使用,我以前尝试过,Debug会报错,不知道现在的中文补丁是怎么样了,不过反正那几个单词,英语不好也完全不影响正常使用,正好练练英语,不是更好?
  安装报错怎么办?根据你的环境不同,有时候会遇到各种奇怪的问题,相信测试人员是有能力搞定安装的问题的。
  如何破解?请支持正版。
  公司没有自动化环境怎么办?公司没人做自动化怎么办?那自己学习,然后自己将自动化引用与项目,不是非得有人带,才开始学。
  录制无脚本是为何?新手必问的问题了,没有之一。大概检查一下这几个地方:安装正确与否;如果是web测试,必须先开QTP再开IE;检查IE插件里的BHO是否启用;去掉IE的保护模式;拉低IE的安全级别;使用管理员权限启动QTP;确定QTP和IE是否兼容;确定控件是否可被QTP识别。
  选择QTP版本?现在已经有11.5版本了,如果你的系统和IE版本都很高,尽量选用新版本的QTP或安装相应补丁。不要再问QTP9.2是否能在WIN8上识别IE10这样的问题了。如果都是很常见的标准控件,QTP11是个不错的选择。
  使用是么编程语言?要学到什么程度?QTP默认用VBScript,程度嘛~低基本语法和编程思想,无上限。
  QTP能否进行多人并发的性能测试?如果你有足够多的电脑的话。
  不会编程也对编程无兴趣能否做好QTP自动化测试项目?呵。。。呵呵。。。呵。。。、
  然后是一些常用操作:
  在函数名上使用Alt+G能跳转至该函数。
  强制终止脚本运行的快捷键 Ctrl+Alt+F5。(PS:UTF11.5以后,貌似没有强制终止的快捷键了。)
  Ctrl+M是注释, Ctrl+Shift+M是取消注释,用于批量注释脚本和批量取消注释。
  垂直选择:先左键选择一段文字,再单击下右键(左键不松),再往下拉,即可多行垂直选择,且可多行一同编辑字。
  在调用函数时,如果参数提示不小心消失了,可通过快捷键 Ctrl+Shift+Space 再显示,前提是,设置下你的输入法默认快捷键,否则无法正常使用。
  显式声明 Option Explicit 可以帮助你检查脚本变量是不是有写错。
  Tools -> Options -> Web -> Advanced 里能设置QTP的两种回放模式,Event 和 Mouse,个人建议使用Mouse模式,更像手工测试一些。
  Tools -> Web Event Recording Configuration 对BS架构的系统设置录制的详细等级。
  File -> Settings -> Run 关于脚本运行的参数设置,包括发生错误时如何处理的设置和职能识别的开关。
  Tools -> Options -> Run 又是个关于脚本运行的设置,这里的运行设置主要是QC与QTP之间的设置,如果使用QC来管理自动化测试脚本,那这个设置项是必不可少的。