软件测试应具备哪些基础知识
理论上讲,做软件测试的要求有什么就要懂什么,不是什么人都可以做的。
但实际上测试工程师是有初、中、高三级之分的。
而初级工程师所需要的知识不多,一般只需要学过简单的理论即可。
中、高级相信需要一段过渡时期的,它们都必须以工具为主。
至于教材,可以说所有的计算机教材都是其中的一部分,就差你是什么方向的测试工作。
一般来说,开始的时候,你只需要一本《软件测试理论》入门即可。
有空可以看看《测试的艺术》一书(得益网有得下载)。
什么数据库\开发语言,这些与软件测试都是什么关系???至于这个问题,首先要说明,软件测试一般可分为:单元测试、集成测试、系统测试、验收测试。
单元测试一方面是直接对代码进行直读,所以它要求必需懂得开发语言,另一方面它要写驱动和桩,所以也要懂开发语言。
(一般单元测试都是要开发人员扶助的)。
而数据库,简单来说每当我们要验证一条记录的所有信息是否完整,都需要进入数据库中查看,查看是否有漏某个字段;而从更高层次来讲,它涉及到系统性能调优问题。
做软件测试都需要学那些知识
软件测试是一个入门简单、但深入难的工作入门的时候只要会看懂中文、理解能力没问题就可以按照测试用例来执行用例了进一步之后需要会的知识会越来越多1、操作系统的知识(什么软件都是运行在操作系统之上的、一般的操作必须要会)2、数据库知识(现在还能找到多少不需要数据库的大型软件捏?)3、计算机网络(通信呀通信、千万不要TCP和UDP都分不清楚)4、计算机硬件(你要是C/S架构的测试或者是做性能测试、那么计算机硬件都是必修课了、总得知道IO是什么IOPS又是啥)5、各种测试工具的使用、什么QC/TD/BUGfree/QTP/LR之类的 不需要样样精通但是必须要熟练使用6、软件测试基础知识(这年头没有知识是万万不能的、软件测试基础知识其实买几本书好好看看就能学个差不多了)7、开发语言(做到高级软件测试的人都是会写点小工具的)8、测试环境配置:这个要说下、我在做配置管理的时候发现很多测试人员居然连自己的测试环境都配置不好、一个连自己的测试环境都不会配置的人会成为一个合格的测试么。
(你要测试web的apache、tomcat、iis之类的得会配置吧)PS:希望你不要被我写的这么多东西吓到了、这些知识是在软件测试的进化过程中慢慢积累起来的、不是所有人都一开始就会了、你是计算机专业毕业的。
那么计算机硬件、网络、操作系统、数据库什么的都应该在学校的时候有学到的、所以应该不是问题最后:祝你好运
软件测试需要学习哪些知识
软件测试工程师应该学习知识:(1)软件开发技术很多人认为,干吗要学习软件开发啊,那还不如直接去学什么JAVA、C++、C#了。
要知道,在以后的软件测试工作中,你就会发现软件开发与软件测试之间是什么样的关系了。
没有软件开发,就没有软件测试,有了软件测试,软件开发出的软件产品才能够达到用户满意的地步,他们之间是相互依赖关系。
有了更多的软件开发知识,就会更好地能理解软件产品,就知道在哪个环节开发人员容易犯错误,知道在哪个逻辑结构、哪个接口或函数,甚至是从内存的管理机制上都可以找出问题。
软件开发所用的程序设计语言有很多种,所以要精通其中一门,其他能看懂代码,会对你的测试工作有更好的帮助,另外也会帮助开发人员进行快速缺陷定位。
而且在软件测试工作中,要编写一些辅助测试的小工具,都需要有软件开发基础。
象测试过程管理工具、测试用例管理工具、缺陷跟踪工具、性能检测工具等等。
不要老是认为软件开发难,什么事都是从不会到会,从不精通到精通,都需要一个过程。
没有人一生下来就什么都会的,都需要自己的不断努力才能成功。
(2)网络技术软件是从字符界面产品发展到图形界面产品,从单机版到网络版(C/S结构和B/S结构),经历了一个漫长的过程。
计算机网络的出现,改变了现实社会中人们的相互沟通方式,把一个小小的地球变成了一个地球村。
所以,目前所有的软件产品都从传统的单机模式向网络模式转变,网络技术就更加关键。
目前网络的发展,使得网络速度进一步提高。
目前,家庭网速达到1M~2Mbps,企业达到4Mbps,据说要到2012年家庭的网络速度要达到20Mbps。
那么网络硬件从传统的电缆到目前的光纤技术、无线通信技术。
从目前的发展速度,三网(电信网、电视网、计算机网络)合并是迟早的事情。
网络硬件协议的测试,也是网络设备生产商要做的工作。
(3)数据库技术现在的数据信息是海量的。
在目前的软件产品中,底层架构中就需要有数据库进行数据存储,那么对数据的增删改查的操作是软件测试人员必须要必备的技能。
数据库测试也是测试技术的一种。
(4)测试与质量保证技术精通软件测试理论,熟悉软件测试流程,理解软件测试的哲学思想,掌握软件测试每个阶段的文档编写技巧,掌握软件测试的策略与各种测试方法,掌握测试用例的设计方法。
掌握单元测试、集成测试、确认测试、系统测试、验收测试等每个阶段的测试技术。
软件质量保证知识、测试项目管理、测试团队建设知识也是必须要具备的。
掌握软件测试自动化工具,理解软件测试自动化测试框架,能够学会如何进行测试项目管理、回归测试以及性能测试,能够把性能缺陷进行定位。
软件测试还是一个崭新的学科,还没有形成一个独有的知识体系,还需要我们不断的研究与实践。
(5)行业知识目前软件测试涉及的行业是多种多样的,从金融产品到电信、游戏、汽车、杀毒、网站、企业管理、学校教育、本地化产品等等,各行各业的软件产品都需要大量的测试,所以相关行业知识的储备也是必须的。
(6)职场规范职场礼仪是必须的,你是否适合某个企业,能否融入这个企业,基本的职场规范是要学习的。
必要、有效的沟通也是软件测试人员所必须掌握的技巧。
软件测试的发展方向,应该学习哪些知识?
软件测试工程师未来的发展 从事软件测试有没有前途,未来的职业发展方向怎样呢? 陈宏刚博士表示,软件测试工程师在微软的发展有几种途径:一种走技术路线,成长为高级软件测试工程师,这时他能够独立测试很多软件,再向上可以成为软件测试架构设计师。
第二种就是向管理方向发展,从测试工程师到组长(Lead),再到项目经理(Manager),到更高的职位。
第三种可以换职业,做项目管理,做开发人员都可以,很多测试工具软件开发工程师在写测试软件的过程中,因为开发方面积累了经验,同时对软件产品本身产生了自己的看法,很容易转去做产品编程。
陈宏刚博士现在还带着一个测试小组,两个清华软件学院的学生,一个南开的专门做软件测试的博士生,一个北邮的学生,他们负责总部一个产品的测试。
陈博士表示,在自己简单的讲讲思路,共同探讨之后,他们一星期就找出了70多个Bug,也感觉学了很多知识,并表示以后专注于软件测试专业,因为他们感觉软件测试真的是一门很深的学科,有很多可以研究的课题。
其实微软的测试人员很多也都是硕士、博士,他们同样在做创造性的工作,保证着程序质量,推动着软件的进步。
软件测试是正在快速发展,充满挑战的领域。
尽管现在单机版桌面软件的测试已经成熟了很多,但对于网络时代的到临,包括微软在内的公司对基于网络的测试也没有一套完整的体系,也是处于探索中,网络中被攻击的可能性太大,这就是为什么黑客在网络上能兴风作浪的原因。
网络测试是一个新环境,而且是很大的挑战。
软件测试未来的发展空间很大,软件测试工程师的职业之路同样充满希望。
软件测试需要熟练掌握测试的相关理论,熟悉测试的流程和测试的技巧,可以给你推荐一本书《测试的艺术》,网上可以下载到电子版的。
熟读这本书基本上就可以应付笔试了,呵呵。
另外,想要在测试方面取得更好的成绩,呵呵,也就是想拿到更多的薪酬,进入更高的层次,要学习性能测试和自动化测试,国内目前已LoadRunner和QTP为主,可以多关注一下。
有基本的编程技能学习起来会比较容易,这也是一般的公司喜欢招收计算机相关专业毕业生的原因,据我的经验,只要掌握了基本的C语言就差不多够用了,后期用到的东西可以找开发人员请教,顺便学习。
呵呵另外,要多搜集网络资源,几个有名气的测试网站上都有很多入门级的建议,可以好好的参阅一下。
(1)熟悉计算机基础知识; (2)熟悉操作系统、数据库、中间件、程序设计语言基础知识; (3)熟悉计算机网络基础知识; (4)熟悉软件工程知识,理解软件开发方法及过程; (5)熟悉软件质量及软件质量管理基础知识; (6)熟悉软件测试标准; (7)掌握软件测试技术及方法; (8)掌握软件测试项目管理知识; (9)掌握C语言以及C++或Java语言程序设计技术; (10)了解信息化及信息安全基础知识; (11)熟悉知识产权相关法律、法规; (12)正确阅读并理解相关领域的英文资料。
通过本考试的合格人员能在掌握软件工程与软件测试知识的基础上,运用软件测试管理方法、软件测试策略、软件测试技术,独立承担软件测试项目;具有工程师的实际工作能力和业务水平。
软件测试都学习些什么内容?
软件测试需要熟练掌握测试的相关理论,熟悉测试的流程和测试的技巧,可以给你推荐一本书《测试的艺术》,网上可以下载到电子版的。
熟读这本书基本上就可以应付笔试了,呵呵。
另外,想要在测试方面取得更好的成绩,呵呵,也就是想拿到更多的薪酬,进入更高的层次,要学习性能测试和自动化测试,国内目前已LoadRunner和QTP为主,可以多关注一下。
有基本的编程技能学习起来会比较容易,这也是一般的公司喜欢招收计算机相关专业毕业生的原因,据我的经验,只要掌握了基本的C语言就差不多够用了,后期用到的东西可以找开发人员请教,顺便学习。
呵呵另外,要多搜集网络资源,几个有名气的测试网站上都有很多入门级的建议,可以好好的参阅一下。
(一字一句敲上来的,希望对你有用,有问题可以继续请教我)
软件测试学习要具备什么基础?
展开全部 程序的功能是否正确;(要求计算机知识) 是否符合用户的使用习惯;(要求界面设计知识和换位思考能力) 性能是否满足要求,例如长时间使用;稳定性;(要求深入的计算机知识) 是否能够满足用户可能的不同操作系统的要求;(要求计算机知识) 如果在全球发布,是否满足不同语言和文化的需求;(要求软件国际化测试知识) 如何搭建测试环境;(动手能力,硬件知识) 做代码检查。
(比较深入的C语言知识)计算机专业技能 计算机领域的专业技能是测试工程师应该必备的一项素质,是做好测试工作的前提条件。
尽管没有任何IT背景的人也可以从事测试工作,但是一名要想获得更大发展空间或者持久竞争力的测试工程师,则计算机专业技能是必不可少的。
测试专业技能 现在软件测试已经成为一个很有潜力的专业。
要想成为一名优秀的测试工程师,首先应该具有扎实的专业基础,这也是本书的编写目的之一。
因此,测试工程师应该努力学习测试专业知识,告别简单的“点击”之类的测试工作,让测试工作以自己的专业知识为依托。
软件编程技能 实际上,由于在我国开发人员待遇普遍高于测试人员,因此能写代码的几乎都去做开发了,而很多人则是因为做不了开发或者不能从事其它工作才“被迫”从事测试工作。
最终的结果则是很多测试人员只能从事相对简单的功能测试,能力强一点的则可以借助测试工具进行简单的自动化测试。
...
安分bu守己