自动化测试心得
文章平均质量分 73
景太蓝
这个作者很懒,什么都没留下…
展开
-
认清自动化测试
部分转载并加上个人的读书笔记 认识自动化的不足,我觉得首先要转变的一个想法是“自动化测试并不是用来发现bug的”(是用来保证产品没有bug的)。原因很简单,自动化测试基于testcase,但所有的bug中只有大约1/4是仅仅按照testcase来测试就能发现的,其它的bug,来自于聪明的“人”的经验,分析,发散思维和说不清道不明的“灵光一闪”,而这些特性对于自动化程序来说完全是无能为力。所原创 2009-05-30 14:46:00 · 610 阅读 · 0 评论 -
QTP截取串方法
<br />不知道大家是否用过QTP的output vaue的方法,比如说页面出现一大堆文字然后中间有个订单号,我们可以用output value的方法把订单号输出保存到参数或变量里面,这在我之前的文章有提到过。不过有的时候我们不需要去输出值,也可以用下面的办法获取值进行计算或其他操作,用法类似于output value,只要输入字符串并给定前置字符串和后置字符串,就可以得到中间的字符串。前置字符串和后置字符串可以为"",前置为空则表示获取字符串从头开始到后置字符串之间的字符串,后置为空则获取前置字符串之后转载 2010-11-01 14:21:00 · 1692 阅读 · 0 评论 -
面向对象的扩展设计
<br />摘要<br /> 本文主要介绍的是QTP的一种较为先进的技术,本技术是由AdvancedQTP SOLMAR自动化测试专家组所采纳的一种面向对象的设计模式,由Meir Bar-Tal于2008年12月20日发表,笔者将会详细介绍此设计模式的每个类以及方法,设计模式的使用,设计模式的优缺点。<br /> 此模式主要是把QTP描述性编程以及装载GUI对象的DICTIONARY对象通过业务驱动的方式来得到体现,最有价值的地方在于其对象识别的先发机制,可以有效的防止QTP在运行时识别对象出现卡住的现转载 2010-11-02 17:28:00 · 599 阅读 · 0 评论 -
银行类动态图形密码框解决方案
今天遇到一个问题,网银类动态图形密码输入框,如何使用QTP完成密码录入工作。该密码框特点如下:1、数字位置每次都会改变,所以无法通过低录解决。2、只读。3、后台加密处理,所以使用DOM对象的SetAttribute的直接使用value赋值的方式会导致密码错误。 4、透明背景。解决方法:一、使用sikuli解决用sikuli解决了,但还是感觉治标不治本 1、将图片中的0-9的每个按钮保存为单个识别的图片对象 2、根据传入的密码,在sikuli中进行图片识别并点击 3、将此sikuli脚本导出原创 2011-03-03 17:42:00 · 1293 阅读 · 0 评论 -
自动化测试的发展趋势
<br />本文部分节选,其中主体思想:<br />1、将自动化测试从UI测试提到前端(单元、集成阶段)<br />2、开发和测试要合力保证软件质量,开发要在设计阶段设计自动化测试接口,提高未来自动化测试效率。<br /> <br /> <br />提及自动化测试,如果单纯这么说,那么范围非常广泛。单元测试的自动化,功能测试自动化,性能测试自动化都属于自动化测试的范畴。而我们常说的自动化测试往往指的是UI功能自动化测试。<br /> 其实,在自动化测试领域,较为成熟的应用集中在单元功能自动化测试和性能原创 2011-03-10 09:47:00 · 4388 阅读 · 2 评论 -
业务组件学习资料
<br /><br />11.6 QC和QTP构建自动化测试框架<br /><br />做功能自动化测试都会不约而同地遇到一个比较棘手的问题--测试框架的搭建。这也是直接影响功能自动化测试成功与否的关键。框架做得好可以使测试事半功倍,反之轻则很难看到工作的成果,重则会导致整个测试失败。目前有很多关于测试框架的讨论话题,其中也有成型的测试框架,也有很多好的思想在里边,很值得借鉴。但是今天要讨论的不是那些已有的,而是HP已经为我们设计好的一个测试体系--业务组件测试。它是利用QTP与QC的完美结合组成的一个体转载 2011-03-09 17:56:00 · 2058 阅读 · 0 评论 -
自动化测试问题拾遗1
<br />今天发现一个很搞笑的问题,为这个问题折腾了一下午,QTP加载脚本文件时,死活加载不上。此脚本之前一直好好的,不知道为什么突然变成这样,对比之前脚本,一模一样。后来仔细看才发现问题所在,之后的脚本字符集被改成了UTF-8编码集格式,两个脚本虽然内容一样,但是由于字符集不同,大小也不同了。QTP报错的可能是因为QTP只能要求支持VBS脚本为ANSCII码。原创 2011-05-11 10:51:00 · 707 阅读 · 0 评论 -
QTP调用API实例集
<br />题前:<br />QTP调用DLL(Extern.Declare函数参数介绍)<br />QTP拥有自己的.NET Factory接口,以调用.NET生成的DLL,也可以使用Extern.Declare来进行外部的DLL的访问。<br /> 语法:<br /> Extern.Declare(RetType, MethodName, LibName, Alias [, ArgType(s)])<br /> 参数说明:<br /> RetType: 方法返回值的类型。<br /> Meth转载 2011-03-23 11:20:00 · 3860 阅读 · 1 评论 -
自动化开发测试框架
<br />此文章转的<br />此框架是从SAFFRON框架改的,据作者说是优化版,收了,以后查用。不错的自动化开发测试框架。<br /> <br />‘***************************************************************************************************************************************<br />'定义全局变量以便于该框架函数WorkUnderFrame 的运行,否则变原创 2011-03-24 17:03:00 · 1408 阅读 · 0 评论 -
SAFS与STAF框架初探
<br />SAFS(Software Automation Framework Support,http://safsdev.sourceforge.net/Default.htm)是基于数据驱动和关键字驱动的思想设计的开源自动化测试框架,支持跨平台、多语言的应用。<br /> <br />STAF(Software Test Automation Framework,http://staf.sourceforge.net/index.php)围绕组件重用的理念,通过服务调用(如远程处理、资源管理、监控等转载 2011-03-28 11:22:00 · 1600 阅读 · 0 评论 -
使用 WebSphere Business Modeler 实现业务流程的直接部署
引言2008 年 6 月 24 日,IBM® 宣布推出 WebSphere Business Modeler(以下称为 Modeler)的 6.1.2 版,以及业务流程管理(Business Process Management,BPM)堆栈中的其他产品。6.1.2 版本的转载 2011-08-22 11:20:22 · 1464 阅读 · 0 评论 -
QTP拾遗
<br />1.在脚本运行过程中屏蔽鼠标键盘输入<br /> SystemUtil.BlockInput ‘开始处<br /> 这里是你的脚本<br /> SystemUtil.UnblockInput ’结尾处<br />---------------------------------------<br /> 补充关闭进程的方法:Systemutil.closeprocessbyname "GreenBrowser.exe"<br />2.检查页面对象是否可用<br /> yanzh原创 2010-11-01 14:17:00 · 1688 阅读 · 0 评论 -
软件自动化测试方案的效益分析
<br />引言<br /><br /> 随着软件测试技术的发展, 人们已经从最初的纯粹的手工测试转变为手工和自动化技术相结合的测试方法。近年来,自动化测试越来越受到人们的重视, 对于自动化测试的研究也越来越多。<br /><br /> 但是,当前的研究热点多在自动化测试框架、自动化测试工具和脚本的研究, 而在软件自动化测试方案的效益分析方面涉及较少。本文首先对手工测试和自动化测试进行了比较,接着给出了自动化测试方案选择要考虑的因素, 然后给出了一种效益分析模型,希望通过对自动测试效益的分析,指转载 2010-10-27 10:50:00 · 2160 阅读 · 0 评论 -
QTP面向对象思想
<br />这种框架的核心思想是把某个窗口的测试对象和相关业务核心操作都封装在VBS的类中,称之为GUI层,或者叫GUI-业务桥接层。例如下面的登录界面类:<br /> ' 登录界面类,封装了界面对象数据以及相关业务操作<br /> Class Login<br /> Private m_htChildObjects 'As Scripting.Dictionary<br /> Public Property Get ChildObjects()<br /> Set ChildObjects =转载 2010-10-27 10:00:00 · 630 阅读 · 0 评论 -
软件架构中对于可自动化测试的设计思考
在过去的一年,项目组推行自动化测试工作,从目前的实际成果上看,感觉效果不是很理想。我们的系统是基于J2EE B/S架构的软件系统,目前的问题主要具体体现在以下几个方面: 1. 自动化用例脚本编写复杂费时。以前一个人一天只能写6个用例,目前一天最多也只能编写20个用例。一个Story的开发周期是3到5天(含简单设计、编码及开发自测)。一个Story平均有80个测试用例,测试人员的精力大部分都要转载 2009-10-13 19:20:00 · 1235 阅读 · 0 评论 -
自动化测试级别的一个生动例子
以下文字来自51testing网站 用一个小例子来说明手工测试,自动化测试,系统命令,编程语言,API的关系很多人理解的自动化就是把手工测试case用脚本和工具转变成自动化测试。也就是说把手工测试的每一个步骤用脚本来模拟,从而执行test case。那么自动化的所有问题就归结于,如何用工具和脚本来转化手工操作步骤了。还有很多非常senior的,但是不会coding的手工测试工程师强调c转载 2009-12-15 13:33:00 · 1160 阅读 · 0 评论 -
BPT与QTP结合
<br />做功能自动化测试都会不约而同的遇到一个比较棘手的问题-测试框架的搭建。这也是直接影响功能自动化测试成功与否的关键。框架做的好可以使测试事半功倍,反之轻则很难看到工作的成果重则会使整个测试失败。目前网上有很多关于测试框架的讨论,其中也有成型的测试框架,其中有很多好的思想在里边,很值得借鉴。但今天要讨论的不是网上已有的,而是HP已经为我们设计好的一个测试体系,业务组件测试。他是利用QTP与QC的完美结合组成的一个体系架构。它可以轻易实现目前比较流行的三层测试架构:脚本层,业务层,数据层相分离,为开展转载 2010-07-06 17:35:00 · 3548 阅读 · 1 评论 -
自动化测试研究
<br />文中划线部分是亮点~是日后钻研的方向,将开发中的设计模式思想引入自动化测试时怎么一回事呢,目前还不太知道....目前只能做到框架层面.<br />————————————————————————————————————————————————————————————<br />一.背景(测试现状)<br /> 公司的业务不断扩展,项目越来越多,长期需要更新且更新频繁的项目也越来越多。而测试人员已经不能满足这么多项目的测试,测试压力也很大。许多升级的项目或只做少量更改的项目,只能针对修改的部分进转载 2010-10-19 14:54:00 · 1011 阅读 · 0 评论 -
自动化测试的盲区
转帖加笔记,因为最近要写一份可行性分析报告~阅读了不少此方面资料,抛砖引玉~————————————————————————————————————————————————这里有几个原因导致GUI自动化测试比预期的要困难:第一个原因是需要手工完成部分脚本。(~文中大概意思指的是业务逻辑及其复杂的,不适合做自动化测试~)“录制回放”虽然可以生成部分测试脚本,但是有很多问题导致“录制回放”不能应用到整个测试执行过程中。第二个原因把GUI自动化测试工具和被测试的产品有机的结合在一起需要面临技术上的挑战。(~工具不转载 2010-10-19 21:59:00 · 1075 阅读 · 0 评论 -
系统谈谈自动化测试
这篇文章看着不错,先收下,日后做笔记分析——————————————————————————————————————自动化测试 一、背景 我从毕业到现在, 曾在大小不同的三个公司就职: 有民营的、有外资的、也有上市公司。 但以前大多都是做项目,从事软件开发工作,绝大部分公司对测试都不重视,即使有也没有成规模, 更谈不上建立测试体系。总之,重开发轻测试的管理思想在中国延续了几十年、并且还要继续,看看他们给 测试工程师 开的低工资和老师在课堂上讲到测试时一笔带过就知道测试被中国的老板所转载 2010-10-19 22:39:00 · 1752 阅读 · 0 评论 -
自动化测试脚本开发的几种策略
“录制回放”的方法是简单的,也是脆弱的,但是它的开发成本很低,然而维护成本很高,因此总体成本也会很高。使用先进的关键字驱动测试的方法,则维护成本会很低,但是开发成本会很高,因此总体成本也会很高。测试经理需要在这些方法中作出明智的选择,以便把总体成本尽量降低。(~说明几种方式是可以并行存在于同一个测试项目中的吧~)编写脚本的方法 不同的自动化测试脚本编写方法主要有: 1. 线性的 2. 结构化的 3. 共享的 4. 数据驱动的 5. 关键字驱动的 线性脚本编写方法 (~此转载 2010-10-19 15:58:00 · 7789 阅读 · 0 评论 -
QTP面向对象开发思想
——对动态可继承对象的动态操作 曾经测试过这样的产品,所有、或者大部分功能模块中,都包含一些同特性的子功能,其在功能及页面上存在大量继承关系。以至于这些对应子功能的操作使用逻辑相同、页面控件属性相同。这些特点描述的种种,预示着测试代码在结构上可以使用面向对象程序开发思想。 一个通俗的举例:记得我们大多数测试软件中,功能页面的“帮助”功能么!通常,在重点功能模块中,都会包含一个“帮助”按钮。我们一起分析一下。 1. 所有的“帮助”按钮触发后都会调用同一篇“文档”。2. 所有的“帮助转载 2010-10-27 09:48:00 · 750 阅读 · 0 评论 -
QTP专业资料汇总
<br />1、 QTP专业网站 <br />http://www.advancedqtp.com/<br />http://knowledgeinbox.com/<br />http://www.learnqtp.com/<br />http://relevantcodes.com/<br />http://www.intellipro.co.uk/<br />http://www.softwareinquisition.com/<br />http://www.qtp10.com/<br />2、HP转载 2010-10-27 09:50:00 · 1090 阅读 · 0 评论 -
自动化测试案例
<br />自动化测试已经越来越深入人心,其重要性也是不言而喻的。性能测试中大规模并发的要求,压力测试中的大规模压力的模拟,回归测试中的大规模测试用例的反复执行都要求实现一个高可用、高可扩展性的自动化测试框架体系。因此,如何在一个开放的框架下,构建一个完整的自动化测试体系是我们需要研究的方向。<br /> 一个完整的自动化测试框架体系包含以下几个部分:1、自动化测试框架;2、测试脚本以及测试数据管理;3、测试脚本的执行管理系统;4、测试结果的显示与分析系统。其中最重要的是自动化测试框架部分。<br />转载 2010-10-27 16:11:00 · 5500 阅读 · 0 评论 -
图的深度优先遍历
这里的图的深度优先算法利用了栈来实现。图的深度遍历原则:1 如果有可能,访问一个领接的未访问的节点,标记它,并把它放入栈中。2 当不能执行规则 1 时,如果栈不为空,则从栈中弹出一个元素。3 如果不能执行规则 1 和规则 2 时,则完成了遍历。代码中的图使用的转载 2011-08-23 11:24:51 · 3997 阅读 · 0 评论