致力于自动化测试技术,性能测试技术的研究,测试技术培训以及项目实施,做一个技术与实施的主导者。

教你如何学习自动化测试

上一篇 / 下一篇  2012-11-15 22:47:25 / 天气: 冷 / 心情: 平静 / 个人分类:Quick Test Professional

"Tjz2D$b-i0     软件测试行业经过这么多年的发展,如今测试行业对从业者的要求是越来越高,不再仅仅局限于要求会写测试用例、会细致的执行测试、能有效的发现系统缺陷等;越来越多的企业对应聘者本身的技能要求也越来越高,招聘信息中诸如“精通VBscrīptPerl/Rbuy等至少一门脚本语言”、“至少熟悉一门开发语言”、“精通QTPLR自动化测试工具”、“有大型项目自动化实施成功经验”此类的字眼也逐渐增多。51Testing软件测试网2J%H+v+r%]

*S#tu&@*N JG*W4x"e051Testing软件测试网!f m&L^:zq'o
    
目前看来,除白盒测试内容和测试管理外,主流的方向有两个:功能自动化测试和性能测试。这就要求从业人员能够在短时间内快速的掌握这些知识,才能获取到更好的工作机会。

b)]3a6mG j_(])u051Testing软件测试网t;k'?a8bfq


`^ o0{ PgK0
  一、想从事自动化测试,必须先了解What/Why/How,也就是常说的去了解什么是自动化测试、为什么要进行自动化测试、该如何进行自动化测试,这类的资料在网上有很多,这里就不做重复了;

M(jDI2K A^ spg0

/HJ'`D&Z$ms0
b,Nd*O9H |jt0
  二、需要根据项目的特点,选择合适的自动化测试工具,并了解工具的特性。以QTP为例,该如何去掌握它呢?对于初学者,大多数都是通过录制的方式来生成脚本,这个阶段应该掌握的基础知识有:

NRiQvxA0

f3C.e#\ q0  1)     QTP是如何去识别对象的,对于新手经常会出现录制的脚本回放的时候报错的现象,这个时候就应该考虑为什么呢?如果很了解QTP识别对象的原理啊,我想就能很快定位到原因了51Testing软件测试网ZM%j QG5S8J

51Testing软件测试网*Y.P?`0p7E7zSO

51Testing软件测试网 e0FdQ_'r0x;g
  2)    去掌握一些QTP对象的方法,如GetROPrepertyGetTOPrepertyChildObjects等等,对于相似的方法应该去搞清楚到底区别在哪?像GetROPrepertyGetTOPreperty有什么区别等

.U+go)Y,k"g b3V X051Testing软件测试网~B:\7O8K+s'AG)p"y

  3)    什么是Action参数、什么又是Test参数?两者有什么区别,又有什么联系,在同一Test和不同Test间这些参数如何工作51Testing软件测试网.Lbm(YuzF

\)yT)|d{8a0t T051Testing软件测试网"K#FI!E oN ze R
  4)    什么是环境变量?环境变量是如何建立和使用的,环境变量在参数传递中和action参数、test参数有什么不同

N0\M`$z"D\"y051Testing软件测试网7b0du-_ eI

 

l,E]o!C"^*i0

0j@q;s6s_1E0  5)    了解检查点的知识,明白什么是内置检查点,什么又是自定义检查点。并搞清楚在什么时候该如何使用检查点

L[7x3OAa,z7{r051Testing软件测试网*Z2R)t"D8\xt6J#m

  6)    掌握对象库的操作,了解对象库对于测试的意义,象是否启用智能识别对测试脚本有何影响、为什么同一对象识别起来会有_1_2之类的后缀等都是需要去研究清楚的问题

f5|"K'f.j\051Testing软件测试网 QD*v9o,iUu

51Testing软件测试网.C0p_6Q+^-gj
  这几个问题都搞清楚的话,那基本就能够利用QTP生成正确的脚本了,当然以上只是部分必须掌握的内容,其实还是很多细节的设置,就需要在实际运用中去掌握了。

Dli;r4Y051Testing软件测试网?0a{ m[K

 

;WY c-dhyh&S3c0

y\,W#l7I$\7~(Zh l(v0  、到此为止就可以进一步提升自己的QTP运用水平了,这个阶段就需要去学习vbs知识和如何运用描述性编程实现脚本了,同时在这个过程中还需要去学习html知识、DOMXML、以及像excelword等的API知识了,总的来说,这个阶段应该掌握的内容大体上包括:

;t/~+Q+w(l#DMaJ3W051Testing软件测试网H1DUE0]Ya-zL

  1)     VBscrīpt的基础知识,熟悉常用的方法和函数,掌握文件对象的操作等

K] d&dE2H.s051Testing软件测试网3@vt5D(M)p

  2)    熟练掌握XML技术;excelwordAPI对象,可以根据需要创建日志

;j`F |6S051Testing软件测试网;}5G;D?.r5BD:ME

  3)    熟练掌握DOMHTML知识,能够结合这些技术对Web页面进行解析

8r1JFI1Z!kl T&O0

Q;rC2E?:tf-n4|Y0  4)    掌握数据库的基本操作语句,能够利用ADO对象进行数据操纵

p0? hsM$W"_0

y{S%s7TP.|2YU o0  5)    熟练掌握正则表达式,很多时候处理对象问题相当方便

/V~,e wW8Fr051Testing软件测试网L o b&O!Q,y'}{s;u%Y

  6)    掌握如何调用dll进行工作

g!^1O ~;{&G Ev051Testing软件测试网9Em-^Mr:f4f9g AG_

  7)    能够利用QTP的自动化对象模型创建出需要的运行模式51Testing软件测试网n1~ r&M/{ Zwi?$b

51Testing软件测试网EFr&[y{H+H

  8)    掌握WMI知识

t0{"R jD"lX051Testing软件测试网3w#fWK[_/W1j

  以上只是考虑到的一部分,并不全面,但技术基本是通用的,供大家参考。如果这些知识都能够扎实的掌握的话,基本上能够处理自动化过程中的绝大多数问题了,这个时候你对自动化测试的技术应该是有一定积累了。51Testing软件测试网`+h_ y}U1D0x$Lc

2yWRs?0 

[z#aT"r.w0Kgp9r051Testing软件测试网.kW.C[ P t}Cx

  、接下来就需要考虑自动化测试框架问题了。当脚本规模到了一定的程度,就会面临一些问题,如:

E;v |a"s Ve051Testing软件测试网 J"{D$g] i0t.q P

  1)    如何有效的管理并调度脚本51Testing软件测试网(lJ"q @m-CO#tt!s

51Testing软件测试网CE7k)b |.ag T&A

  2)    如何实现脚本运行的无人值守,测试过程中能够自动进行错误处理并进行日志记录

L C pV6u5Jn$O'_051Testing软件测试网SCl yo bg

  3)    如何生成简介明确的测试报告51Testing软件测试网Q\-HRh+c)^

Elx1R]-Y0  4)    如何能够更加高效的维护测试脚本51Testing软件测试网4zrX(PMCN U'j

y,i-h;k,g(u?0j_0  5)    实现框架代码和业务代码的分层、业务脚本和业务数据的分离51Testing软件测试网m n!D'~{)TEU3I

sh _'m1f~0  这个阶段主要体现的是测试人员的测试思想,是可以脱离工具独立存在的过程。当然各个公司项目的实际情况不同,导致设计出来的思想不同,但总体上来说一般包括数据驱动和关键字驱动两种模式。后者实现的技术难度大于前者,大多数公司目前都采用的数据驱动模式。这个阶段不应局限于技术运用上,而需要从测试全局考虑,进行分层设计、模块化实现,减少代码之间的耦合,你要懂得自动化测试框架的设计和测试框架的基本编写。

NB:TL&r.zmF0

2^4Ss\ Vp!?"y~K051Testing软件测试网z P6Py%o][A:W
      
、自动化测试的实施,这点非常重要,如何让自动化测试有条不紊地运行起来,这是需要自动化测试工程师关注的。51Testing软件测试网_4f8_ o} t6U/x
   
以下几点你需要明白
)[ ]'X:BG n0    1
)没有自动化测试框架,那么很难把自动化测试做得很好很规范的51Testing软件测试网$b u:E&Qr[ |$W4t
    2
)当有了自动化测试框架,这并不代表什么,更不能代表自动化测试就成功了,同一套框架,不同的经验级别的自动化测试人员来实施,效果肯定是不同的
N5oqTK E]0    3
)自动化测试的实施,应该是在基于一套符合公司业务特点的测试框架+良好的实施计划+良好的实施方案
!nt2Qw \b)J0    4
)自动化测试的实施,千万不能落入“只埋头做事,不抬头看路”的形态,不要落入技术的深渊,需要明白,不是所有的东西都能用技术解决,要充分发挥人的作用因素。51Testing软件测试网~(Ih&tu_-T O/d

51Testing软件测试网\_t(\ [ Ax

51Testing软件测试网-j8i3X[,`u_
  如果以上五个方面都能够做的很好的话,那么你已经可以独立负责项目的自动化测试建立工作了,甚至可以开始考虑如何组织自动化测试团队!51Testing软件测试网Yb%b2@6g*OUB(M?

51Testing软件测试网8BjmaPA*qW;D

  总之,学习自动化测试需要在实际项目中进行,这样提高的会比较快,项目中运用了很多种技术,自动化实施过程会碰见各种各样的问题,是很好的学习机会,关键要善于总结、积累经验,只要能够把各个细节做好,那么你一定能够成为一名优秀的自动化测试工程师(主管)。51Testing软件测试网r:Gcg:W

51Testing软件测试网kt At;S$l


TAG:

引用 删除 小小学僧   /   2017-12-12 09:41:06
5
seven_1987的个人空间 引用 删除 seven_1987   /   2012-11-21 16:11:32
5
wjlloveqq的个人空间 引用 删除 wjlloveqq   /   2012-11-21 10:45:56
5
mjy1989的个人空间 引用 删除 mjy1989   /   2012-11-20 16:36:33
都会得话,估计要3、4年
ice_lily的个人空间 引用 删除 ice_lily   /   2012-11-20 16:30:27
受教了,为我学习自动化测试指明了道路啊。。。感谢感谢
咖啡猫来啦的个人空间 引用 删除 咖啡猫来啦   /   2012-11-16 20:34:45
5
xin_晴的个人空间 引用 删除 xin_晴   /   2012-11-16 14:05:38
您好,我是51Testing软件测试网的编辑,您的本篇博文被推荐至51Testing软件测试网首页发表:http://www.51testing.com/html/15/n-829415.html
感谢您关注并支持51Testing博客,期待您更多的优秀原创博文。
 

评分:0

我来说两句

vprince

vprince

6年软件测试经验,TIB自动化测试工作室核心成员,ATF框架核心设计和开发人员,熟悉软件自动化测试、性能测试,多年从事软件项目的自动化测试和性能测试,对自动化测试的框架设计开发、框架搭建以及实施有较为丰富的实战经验。 目前关注开源自动化测试领域、 基于Selenium构建Web自动化测试框架,为多家企业进行自动化测试培训、实施自动化测试项目。

日历

« 2024-04-30  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 67439
  • 日志数: 49
  • 建立时间: 2009-09-09
  • 更新时间: 2012-12-14

RSS订阅

Open Toolbar