前言
软件测试是一个入门简单、但深入难的工作。
入门的时候只要会看懂中文、理解能力没问题就可以按照测试用例来执行用例了。
那么软件测试要如何自学呢?要从一下几点来说明:
1,明确目的
2,选择框架
3,填充内容
4,持续交付
5,不断迭代
一、明确目的
做任何事情,一定要考虑背后的原因是什么,对于自学软件测试并构建测试知识体系也不例外。如果自学软件测试的原因只是因为周围的同学在学,或者觉得觉得软件测试简单,那很可能的结果是三天打鱼两天晒网,难以长久的坚持下去。
因此,明确题主自学软件测试的目的就很有必要。假如和题主的动机培养相结合,制订明确的长远目标,形成强烈的内在驱动,自学软件测试并构建测试知识体系,自然就能长时间坚持了。例如:
1,一流动机:题主发自内心喜欢软件测试工作,觉得每天的测试工作能给自己带来乐趣和成就感;
2,二流动机:题主有明确的长远目标,例如:5年内达到测试管理职位,薪资待遇达到什么样的级别等;
简单而言,题主在一个相对长时间内,会将软件测试作为自己的一个职业,而不仅仅只是一个工作看待。那么自学软件测试可以让自己充满热情,并通过每天获取的成就感,推动自己长时间的自学。
二、选择框架
明确了自学软件测试的目的之后,接下来需要考虑学习什么。假如题主在软件测试没有什么经验,自己摸索构建测试知识体系是很困难的。假如其他条件能满足题主的要求,例如:时间、成本等,选择一个合适的测试培训公司,系统的学习测试体系是比较合适的(但更多的时间和精力是在培训结束之后,将学到的知识通过刻意练习转化为你的能力)。题主题目中更强调自学软件测试,首先选择一个经过实践经验的已有框架,通过自上而下的结构化构建方式是比较合适的。例如:
1,ISTQB测试知识体系:从简单的软件测试基础级别开始,到高级的测试分析师TA、技术测试分析师TTA和测试管理TM,再到专家级的不同领域的更专业深入的测试专题。具体内容可以参考ISTQB官网或国内的CSTQB官网;
2,PTMP测试知识体系:这是我在2009年以后逐步构建和完善的软件测试知识体系,包括4个维度的内容:测试过程P、测试技术T、测试管理M和人P(属于通用的软件测试知识体系,并不涉及行业相关的内容)。详细内容可以参考“构建高效的软件测试知识体系”;
3,参考经典的测试书籍:看看都有哪些比较通用的框架,国内外可以参考的书籍很多,这里不做推荐。也可以通过知乎的搜索功能,有不少知乎牛人罗列了不同级别测试人员可以参考的测试书籍;
4,选择支持工具:构建框架过程更多的是应用结构化思维,因此支持的工具可以选择Xmind、MindManager、MindMaster等,我更喜欢用MindMaster;
基于已有的测试知识体系框架,随着你的经验和能力的不断提升,就可以不断改进甚至重新构建属于你自己的测试知识体系。
软件测试交流群313782132,免费领资料,互相交流~更有行业大牛解答问题
三、填充内容
题主选择了测试知识体系框架之后,接下来对框架进行分层分类,以我的PTMP测试知识体系为例,第二层分类包括:
1,测试过程P:例如过程阶段和活动、测试文档、测试环境、回归测试、脚本化测试与探索性测试、测试基本原则等;
2,测试技术T:例如静态测试、测试用例分析与设计、测试工具与自动化等;
3,测试管理M:例如测试计划、测试估算、测试风险、缺陷管理、测试度量、测试团队管理、测试过程改进等;
4,人P:例如学习能力、思考能力、解决问题能力、思维能力、沟通能力、写作能力、时间策略等;
框架经过分层分类之后,基本上得到的是测试过程中的一些关键测试域,然后不断地往框架内填充具体的测试知识:
1,选择优先级:基于你当前的测试工作要求和经验,选择对你而言最迫切和重要的测试关键域,例如:测试分析与设计;
2,专注一个领域:将主要时间和精力放在选择出来的高优先级测试关键域,通过一段时间,例如3个月努力学习让自己入门;
3,利用网络资源:除了书籍之外,一定要好好利用丰富的网络资源,例如:知乎的问答、测试牛人的博客和专栏等;
4,选择支持工具:我常用的是有道云笔记和印象笔记,收集和整理资料非常方便,而且可以在不同终端使用;
四、持续交付
随着学习的不断深入和测试经验的增加,一定要尝试不断地输出,这也是学习金字塔原理的一个要求。输出包括:
1,撰写文章:学习到的测试知识,结合你的测试经验,不断尝试通过文章的方式写出来。自己感觉懂和输出文章是不一样的能力层次。通过不断输出文章,不仅可以提高你学习测试知识的理解,更可以不断提高你的写作能力、思维能力;
2,沟通交流:与周围测试同事交流、参加测试大会或沙龙与其他测试人员面对面讨论,都可以让自己在测试知识的理解和应用上面有新的收获;
3,教授他人:根据学习金字塔原理,主动学习的最高层次是教授他人。也就是说,假如你懂了某块测试知识,通过认真准备,比如PPT形式,能够将内容清晰地传递给其他人,那就说明对这块测试知识的了解已经有深度了。假如你能以脱稿的方式讲解清楚,那就更上一层;
4,输出平台:个人网站、CSDN博客、知乎等,对自己有信心,可以开始到外面的企业上课等;
五、不断迭代
经过上面的几个步骤,应该可以基本构建了你自己的测试知识体系。但软件测试知识体系也是不断动态调整和更新的,而不是一成不变的。随着知识面的不断拓宽、测试经验的不断丰富,测试知识体系也就越来越完备。特别是在解决测试过程中碰到问题时,不再从单个角度分析和解决问题,而是会综合应用测试知识体系中的技能,多角度多层次审视问题。
总结一下:自学软件测试怎么学
1,明确目的:明确你自学的目的,来源你的兴趣、长远目标,还是周围环境的影响;
2,选择框架:选择已有的测试知识体系框架,例如ISTQB、PTMP等,再进行改进框架和重构框架;
3,填充内容:对框架进行分层分类,选择对自己最重要的测试域,专注持续学习并入门;
4,持续交付:通过文章、交流甚至教授他人方式,快速积累知识体系;
5,不断迭代:不断动态调整和完善测试知识体系,多角度多层次分析和解决问题;
构建测试知识体系的高效学习方式很清楚,但难在长时间的坚持。同时,学习过程中需要不断地进行刻意练习,把测试知识转换成你的能力,测试知识体系才能发挥出它的价值!
上面是我收集的一些视频资源,在这个过程中帮到了我很多。欢迎加入我们扣扣群【313782132 】,里面有各种软件测试资源和技术讨论。
软件测试是IT相关行业中最容易入门的学科~不需要开发人员烧脑的逻辑思维、不需要运维人员24小时的随时待命,需要的是细心认真的态度和IT相关知识点广度的了解,每个测试人员从入行到成为专业大牛的成长路线可划分为:软件测试、自动化测试、测试开发工程师 3个阶段。