Bootstrap

软件测试自学指南---从入门到精通

    近来,软件测试行业发展迅速,企业越来越重视测试了。越来越多的人加入了测试大军中,很多人也想通过自学来学习软件测试技术加入这个行业,但是现在软件测试的书籍越来越多,也良莠不齐,而且软件测试涉及的技术也越来越多。本文主要说明的是从事软件测试行业需要必备的知识,以及该如何学习,主要给大家提供一些比较优秀的书籍,并给出学习的顺序。希望通过阅读本文,读者可以明确该如何学习测试,并学习哪些知识。由于仅是个人建议,如有错误不妥的地方,敬请提出批评。


一、软件测试基础知识

    要想进入测试这个行业,就必须要了解什么是软件测试,该如何测试?

这部分的学习目标掌握软件测试的基本概念、软件测试的流程,并能熟练的应用常见的用例设计方法来设计测试用例。掌握常见的测试方法和类型,并知道如何进行每个阶段的测试。

下面是推荐的参考书:

1、软件测试(原书第2版) (美)佩腾(Patton,R.) 著,张小松 等译

这本书可以用来作为进入行业的第一本书,本书讲解的都是实用的技术,通过阅读本书可以快速的去学会如何测试软件。个人建议,这本书至少要读3遍以上。

看完这本书,自己可以去找一个项目(可以到开源中国上查找)来测一测,应用一下学的知识,找一找缺陷。在测试这个项目中要体会一下测试的流程,学习如何搭建测试环境。

2、软件测试的艺术(原书第3版)  (美)梅耶 等

第二本就是这本软件测试的“圣经”,这本书据说是硅谷测试人员必备的书。这本书最值得看的地方就是测试的思想。阅读这本书可以让你有豁然开朗的感觉。

3、计算机软件测试(原书第2版) (美)卡尼尔

这本书也是值得一读的,同样也是非常适合初学者阅读的。

4、全程软件测试 朱少民

上面的都是外国人写的,来本国产的。


还有很多经典的测试书,例如:Paul C.Jorgensen的软件测试(第2版)这本书,但是笔者认为他不是很适合初学者,这本书都是用来做研究生教材的,做过一段测试的可以来看看。


  二、软件测试进阶书籍

这部分主要是针对有过一年左右测试经验的,真正测试过几个项目的。推荐的参考书主要是提高测试效率的,一些测试的经验。

1、有效软件测试

这本书主要是给软件测试的各个阶段提出了一些建议,一共50条。这些建议都十分中肯,值得一读。

2、软件测试经验与教训

听书名也应该了解了一大半了吧,这本书一共给出了293条经验,阅读它吧。它会让你重新思考关于测试的基本理论。


  还有一些很好的书籍了,但是没有读过的就不做推荐了。


  三、自动化测试

我们都知道,目前自动化测试是软件测试的趋势,而且目前公司在招聘的过程中都会考察自动化相关的知识。这里我们介绍一下QTP和Loadrunner等测试工具。

目标:掌握自动化测试的概念、流程和方法。能够使用相关的工具进行自动化的测试。

QTP部分:

目标:掌握QTP的测试流程、工作原理和基本使用。能够使用QTP进行自动化测试。进阶需要掌握自动化框架设计的原理,并能独立设计自动化框架。

目前网络资源很丰富,有很多前辈录制了很多视频,大家可以先来看看。

1、IT播吧 - 小强老师零基础学习软件测试系列视频教程之QTP学习指南

首先可以先看这套视频,这里主要讲的是QTP的基本使用。学习视频的过程中,最好能够独立的测试QTP自带的飞机订票的例子。这个最好了,QTP的基本使用就没问题了。

2、精通QTP——自动化测试技术领航  余杰 赵旭斌 编著

第一个视频还是讲的录制和回放,并且也是以飞机订票作为的例子,但是实际工作中,很少有录制的项目,基本上都是需要自己开发脚本的。所以这本书会给你很大帮助的。

3、QTP自动化测试权威指南(第二版)

这本是QTP的大牛Tarun Lalwani的经典力作,公认的QTP测试的“圣经”。无论是初学者还是使用过QTP的都应该好好的读一读。


LoadRunner部分:

目标:掌握性能测试的常见术语,性能测试的方法和流程。能够熟练使用Loadrunner。进阶的话需要学会分析性能报表,找到性能瓶颈,进行性能调优。但是这个过程并不是看基本书就可以达到的,需要不断的积累测试经验才能做到的。(努力吧)

1、IT播吧 - 小强老师零基础学习软件测试系列视频教程之Loadrunner学习指南

还是这个视频,学过这个视频基本上可以独立的使用Loadrunner执行性能测试用例了。

2、精通软件性能测试与LoadRunner最佳实战

在来一本入门的书,这本书基本上算是Loadrunner的百科全书了吧,各个方面都有所涉及。

3、捉虫记——大容量Web应用性能测试与LoadRunner实战

这部分还需要掌握,类似QC这样的测试管理工具和Mantis等缺陷管理工具。


自动化理论部分:

1、软件测试自动化 (美)Daniel J.Mosley 等著

2、软件自动化测试技术与实例详解(一本很老的书)

3、自动化测试最佳实践


四、其他技术

上面的是和软件测试理论相关的知识,但是真正的想做好测试这些还是不够,还有一些必须要掌握的知识,下面一一列举一下。

1、数据的技术

目标:掌握SQL语句,重点在增删改查上。可以参考:http://blog.csdn.net/xc5683/article/details/8678255

2、编程语言

这里推荐的是Java,毕竟现在Java用的比较多。而且学会一门语言,在学习其他语言也是很容易的。

目标:掌握程序设计的逻辑和面向对象的思想。掌握一门语言。

目前这方面的视频非常多,大家可以找来自己看看。

3、UML

UML还是必须要会的,至少应该能看懂。毕竟大部分需求都是用它画的啊。

4、操作系统

这里说的服务器的系统,以Linux为例。

目标:能够搭建常见的服务,解决相关故障。

推荐大家看《鸟哥的私房菜这个系列》,除此之外,还有学会Shell编程。

5、Web技术

如果测试Web,对Web还是需要了解的啊。主要是Html+Css+JavaScript。


先分享这么多,欢迎大家补充。

最后奉上一些书籍的电子版:网盘下载

欢迎大家参考:http://blog.csdn.net/xc5683/article/details/8094552

;