测试自学路,到底需要掌握哪些技术?

对于自学软件测试的测试人员来说,遇到最多的问题就是学习了很长时间,但总觉得学得不够系统,但又不确切哪里还有欠缺,哪些技能还需要提升,是不是可以开始投简历然后接受面试;也有直接去面试的,但碰壁实为多数,勿用大量面试去检验自己的成果,而是要珍惜每一次的面试,对测试新人来说,是一次对自身知识架构的考量,也是面对一个新行业不断提升自我素质的一个机遇。

那么软件测试需要掌握的软件技术与专业技能有哪些呢?

首先,了解软件测试的本质。这是最基础的理论知识,但鲜有人能真正地关注,检验自己是否能完全站在用户的角度,思考问题是否能严谨、全面、有条理、逻辑性强。其一,参加面试时一些面试官会由此回答来推断应聘者对软件测试的理解程度和经验指数。

熟悉常见的测试方法和种类,对于常见的测试类型如白盒测试、黑盒测试要清楚其定义与测试原理,白盒测试不需要一定自己接触过,但相关的基础概念要有所了解,以及其他测试种类在不同项目环境下的应用场景,如可接受性测试、α测试、β测试、接口测试、文档测试、安装测试、本地化、国际化测试等等,有些不常用的清楚其原理就好,但不免有些公司的笔试题中会出现。更多的测试类型可以参考文章《软件测试基本专业术语》中的介绍。

理解软件生命周期与软件测试流程等概念,比如面试中最常问的一个问题是:说说你经历的测试流程是怎样的?或者你们处理Bug的流程是怎样的,从需求到交付用户测试人员在不同阶段都扮演了哪些角色?具体的流程可以参考一些基础的专业书籍中介绍,但不要被观念固化,要多接触不同类型的项目,以了解测试流程的灵活应用。

熟悉操作系统的原理,对于计算机专业毕业的同学,应该对操作系统原理印象比较深,但转行或其他跨专业的测试人员,需要在业余时间将操作系统原理的书籍翻看下,因为操作系统是平台的基础,很多公司的产品都支持一些主流的平台,如UNIX、MAC、Windows等,学习操作系统知识如果纯看书的话容易枯燥,且与实际应用结合的效果也不明显。可以在一些网络平台上查找相关的视频学习。

测试环境的搭建

这是自学测试人员最容易忽略的一点,但如果是作为实习测试前期也不会要求必须能搭建环境,但在自学的过程中可以掌握一些常见的技术,一方面面试时可以加分,其次,当真的需要学习去搭建环境时,自己储备的理论知识也可以及时起到作用。

关于测试环境搭建需要掌握如下技术,这里只列出部分。

理解专业术语,构建测试,跨平台,测试环境镜像、虚拟技术、Linux基础操作、中间件等,以上术语不一一解释,但每一项都对自身测试技能的提升有着关键作用,比如,学习中间件可以通过应用Server管理和监控目标应用程序, 对于发现问题、分析问题都有着紧密的关系。

掌握1-2种常见的开发模式,开发模式可以参考之前推文中的瀑布模式与敏捷模式。重要的了解对应的测试模式,如敏捷测试模式就是相对于敏捷开发而言的。一般情况下游戏公司更多采用敏捷开发模式,了解其迭×××发与增量开发。

了解适当的开发技术,可以参考《Web测试扩展-网页语言知识简述》与测试环境搭建类似,前期了解即可,后期在提升自己的职业技能时,开发技术也是必备的,测试人员检查开发"生产"出的产品,如果完全不了解该产品是如何做出来的,则一定不能做到全面的质量管理,也即测试覆盖率与测试深度的问题。

最后,就是测试人员的基本功了,如何设计测试用例与提交缺陷报告 。

掌握设计测试用例的基本方法,如等价类、边界值、判定表、因果图、错误推测法、场景法、流程分析法等等。安装并试用1-2种缺陷管理工具,熟悉基本的操作。一般面试时会问到:以前使用过哪些项目管理工具,缺陷管理工具等。

最后,就是用例书写与缺陷报告的书写格式了,一开始就要给自己形成一个好的习惯。遵照公司内部的书写格式规范,不要允许一丝懒惰,自身就是从事测试的,更要注意一些细节,养成良好的习惯会终生受益。

原文地址:http://blog.51cto.com/hongz/2156684

时间: 2024-10-14 16:18:44

测试自学路,到底需要掌握哪些技术?的相关文章

自学java到底难不难?做好这几步,少走3年弯路

自学java到底难不难?其实学习java说难不难,说简单也不简单.如今互联网十分发达,各种学习资料,视频,文档都可以在网上找到.可以说如今是一个全民自学的时代,你要你有决心和时间,足不出户便能学习很多知识.特别是java资料,基础视频教程等在网上几乎一抓一大把.首先来说一下自学java需要哪些东西:1.要有充足的时间和学习能力学java不是一蹴而就的,是一个不断打基础然后学习新知识的过程.在自学过程中,刚接触java的时候是很乏味并且痛苦的,因为万事开头难,在前期毫无基础的时候,需要花费很多时间

.NET学习之路----我对P/Invoke技术的理解(一)

看了P/Invoke技术的介绍,于是想写下点东西,东西包含两个部分:知识的纪录和我的理解及疑问. r托管代码中调用非托管API函数的过程 1.定位包含API的DLL: 2.载入DLL 3.找到DLL中想要的那个API,然后把参数压入栈中.排列数据(排列数据是什么意思?数据封送) 4.把执行权限从托管代码中转移到非托管代码中() 对Dll中的函数进行一些说明,以能调用 DllImport特性来说明函数,有一些特殊的作用,比如换掉API的原来名字,见DLLImport特性. 非托管函数和托管方法中数

BAT解密:互联网技术发展之路(7)- 网络层技术剖析

上一篇博文<BAT解密:互联网技术发展之路(6)- 服务层技术剖析>中,介绍了互联网业务发展特点的中的"复杂性"的应对方式,本文介绍互联网业务发展特点的另外两个方面"高性能"."高可用". 一般人提到高性能时第一想到的就是优化,提到高可用时第一反应就是双机或者备份,但是对于互联网这种超大容量和访问量的业务来说,这两个手段都是雕虫小技,无法应对互联网业务的高性能和高可用需求,互联网业务的高可用和高性能,需要从更高的角度去设计,这个高点就

网络举报:公民的维权之路到底有多难?

互联网的发展,社会经济高速增长,科技的繁荣,但同时也带来了一些列的社会问题.各种社会矛盾突出,被打挨打事件层出不穷,接连一个又一个,问题总是得不到及时解决,即便是解决了,也是要等上好长的一段时间.这么久了,我想默默的问一句:网络举报 公民的维权之路到底有多难? "魏则西事件"刚刚过去不久,接着发生"雷洋事件"且尚未完全解决,紧接着甘肃兰州大学生彭雪松"遭粗暴执法 屁股被打开花"又成热点.社会问题到底出在哪了,没有了安全感的公民,以后让我们还怎么活

如何踏入”测试“之路

很久没有更新文章了,最近加班比较多,群里面也需要管理,因为资料的原因,近期需要筹划一个自学社区,让更多的人学习更加的方便,抱歉各位找工作的人, 近期有很多找工作的人,很多学习软件测试的新人,也有工作一阵子的软件测试的小伙伴,问到的问题比较多,例如软件测试需不需要学习自动化,软件测试一些工具如何使用(LR,jmeter等等),各种各样的问题,我也通过这个文章帮你们解答下,新人如何学习,以及工作一阵子的小伙伴如何在职场上走的更远. 一.     新人如何学习 很多学习软件测试的小伙伴,大多数是听来的

【WIN32进阶之路】:线程同步技术纲要

前面博客讲了互斥量(MUTEX)和关键段(CRITICAL SECTION)的使用,想来总觉不妥,就如盲人摸象一般,窥其一脚而言象,难免以偏概全,追加一篇博客查遗补漏. win32下的线程同步技术分为用户模式下的线程同步和用内核对象进行线程同步两大类. 用户模式下的线程同步和用内核对象进行线程同步有以下的明显差异: 1.用户模式下的线程同步不需要进入操作系统核心,直接在用户模式就可以进行操作. 2.用内核对象进行线程同步需要进入操作系统核心,用户模式切换至核心模式大约花费1000个CPU周期.

SEOer未来之路到底在哪里?

从开始学习SEO,一直走到今天,已经有将近6年的时间,期间走走停停由于一些原因离开过一段时间这个圈子,和所有的站长朋友一样经历着彷徨.迷茫以及对未来职业的不确定,但是依旧坚持了下来,突发奇想就把自己对SEO这个职业的未来的一些走向给记录了下来,也算对自己6年SEO从业之路的一个交代. 现在和一些群里面的90后站长朋友沟通,经常会遇到有人说做了这么长时间SEO,每天总是反复的在做编辑的工作(采集内容.二级编辑.追踪热点.融入文章等).交换友链和发外链,似乎SEO就只是做这些事儿,刚开始我也会因为学

产品经理到底要不要懂技术?(要拥有的是框架思维:产品分层与模块化设计,使用路径设计,良好的商业思维设计。人生时间有限,不需要将编程技术吃透)

前段时间,我面试了一个国内一线门户客户端的产品经理,她是学计算机出身的PM,但是由于编程能力比较弱,所以做了产品经理.后来在工作中,有时和技术同学打交道比较费劲,所以自己吭哧吭哧开始学习SQL和PHP. 我不太认可这种直接去学习编程的方式,因为产品经理应该是很忙的,你的宝贵时间不该花在学习编程这件小事上.(多说一句,我也是学计算机出身,毕业于国内某最好的大学之一的计算机系.我并无贬低编程之意,恰好相反,我身边很多优秀的产品经理都是学计算机专业出身.) 所以,结合自己的工作和创业经历,以及后来与诸

Java Web项目开发到底需要掌握哪些技术?

目前, 国内外信息化建设已经进入基于Web应用为核心的阶段, Java作为应用于网络的最好语言,前景无限看好.然而,就算用Java建造一个不是很烦琐的web应用,也不是件轻松的事情.概括一下,实施Java的WEB项目需要掌握的技术如下: lJava语言 l面向对象分析设计思想 l设计模式和框架结构 lXML语言 l网页脚本语言 l数据库 l应用服务器 l集成开发环境 下面我们具体地看每个技术. 1.Java语言 Java语言体系比较庞大,包括多个模块.从WEB项目应用角度讲有JSP.Servle