小雨012345
自学有点难度,主要是缺少项目和有经验的人指点!一般的黑盒和自动化测试大致的培训课程有:1 软件测试基础2 软件测试方法、原则、策略3 软件测试需求分析和计划4 软件测试用例设计5 软件测试执行6 bug跟踪和管理7 软件评审、度量和报告8 软件配置管理、质量管理、风险管理9 数据库的操作10 测试驱动开发11 自动化测试工具(主流的一些功能测试、性能测试以及管理工具)。。。。以下的参考资料是一些测试的书籍,你可以参考看看!
吧啦左耳
一、业务分析能力1.分析整体业务流程不了解整个公司的业务,根本就没办法进行测试2.分析被测业务数据了解整个业务里面所需的数据有哪些?哪些是需要用户提供的?哪些是自己提供的?有哪些可以是假数据?有哪些必须是真数据?添加数据的时候可以用哪个库?明白了整个软件的数据库架构,才能知道哪一个数据是从哪一个表里头带出来的,它的逻辑是什么,有没有连带关系。3.分析被测系统架构用什么语言开发的?用的是什么服务器?测试它的话需要用什么样的环境进行测试?整体的测试环境是什么样的?如果缺少了,需要进行环境搭建,架构搭建。一般去一家新公司之后,架构是搭建好的,了解它即可,熟悉之前的这些老员工们使用什么样的架构去做的。4.分析被测业务模块整个软件有哪些模块,比如说首页面、注册页面、登录页面、会员页面、商品详情页面、优惠券页面等等明白有多少个模块需要测试,每个模块之间的连带关系,进而怎样进行人员分工5.分析测试所需资源我需要几台计算机,需要几部手机,手机需要什么样的系统,什么样的型号。比如测一个网站的性能的时候,电脑的配置达不到测试并发5000人的标准,要么升级电脑的硬件配置,要么多机联合,多机联合时需要几台电脑,都需要提前筹划。6.分析测试完成目标我的性能目标是什么样的?我的功能目标是什么样的?我要上线达到的上线标准是什么样的?性能目标,比如我要达到并发5000人的时候,CPU占用率不能高于70%,内存占用率不能高于60%,响应时间不能超过5秒功能目标,比如整体的业务流程都跑通,所有的分支流程都没有问题,所有的接口都能够互相调用,整体的UI界面没有问题,兼容性没有问题等把这些问题都弄清楚,测试的思路会非常的清晰二、缺陷洞察能力1.一般缺陷的发现能力至少你要满足一般缺陷的发现能力,这个是最基本的,如果要连最简单的一般的缺陷都发现不了的话,别说优秀测试工程师了,你说你是测试我都不信2.隐性问题的发现能力在软件的测试过程当中有一些缺陷藏的比较深,有的是性能方面的问题,有的是功能方面的问题,它需要有一些设定特定的条件的情况下才会出现这样的问题。比如说买双鞋必须选择的是什么品牌,必须选择是红颜色,必须选择44号,而且必须选择用特定的支付方式才会出现这样的bug的时候,那么这种就属于特别隐性的bug,对于这样的问题的发现能力一定要比别人更强,要找到一些别人可能发现不了的bug3.发现连带问题的能力当发现了一个缺陷之后,能够想到通过这个缺陷可能会引发其他哪个地方出现问题,这就叫做连带的问题。而不是说发现这一个bug之后提了这一个就算完了,一定要有一个察觉,可能其他地方也存在这样的问题。4.发现问题隐患的能力有些软件里边可能有一些操作模块,或者是代码写的接口,表面上没有什么问题,但是它是有隐患的,比如说这个接口写的不稳定,当他传的数据有一些问题的时候,可能它最后返回的结果就是报错就是报404或者报乱码。5.尽早发现问题的能力如果你只能停留在界面级别的话,那你根本就没有办法达到尽早发现问题的这个能力你必须要等到前端人员把每个界面都做好了之后才能进入测试,而我能比你早一个月进入测试了,然后我比你结束测试时间快一个月,而你又比我晚一个月,那么咱俩的薪资一下就拉开了6.发现问题根源的能力需要知道这个缺陷它到底是由什么原因产生的,是属于什么类型的缺陷,是ui前端人员做的问题,还是后台接口人员做的问题?不仅要找到这个bug,还要知道这个bug产生的原因,这样的测试人员是非常棒的,而且很是受人尊敬,提bug的方式也就不一样了三、团队协作能力1.合理进行人员分工2.协助组员解决问题3.配合完成测试任务4.配合开发重现缺陷5.督促项目整体进度6.出现问题勇于承担四、专业技术能力1.掌握测试基础知识2.娴熟运用测试工具熟悉工具和熟练使用工具完全是两个概念,熟悉工具基本上等同于不会,遇到过很多简历上写会使用什么什么工具,都没有实际能力。比如loadrunner只会一个简单的录制,增强一下脚本,觉得会用了,那知识会用了1/5,其他4/5 都不会。3.了解工具操作原理它是怎么样给服务器发送请求的,是用什么样的方式去发送请的,是用什么样的方式去监控的,它的操作原理是什么样的,咱们要把这件事情搞清楚,这样的话能有助于更好的去使用这些东西。包括一些请求的协议,每个协议代表什么意思,它是用来干什么的。4.自主完成测试任务一定要能够自己完成一个独立的内容,独立的工作,这件事情领导你交给我好了,放心我能给你搞定,要的是这样的人5.找出问题出现原因找出缺陷的时候,不仅要看它的表面,还要看它的本质6.提供问题解决方案发现问题不是能力,发现问题并提出解决方案才是真的能力7.提供完整测试报告测试报告能够说明你表达的清不清楚?领导能不能看懂?还有就是能不能够把你整个测试的过程给它梳理得非常详细,人家能够通过你的报告,能够了解到整个的项目的情况,而不是只了解一个片面的情况8.了解相关技术领域触类旁通
35号小祁
第一阶段、
测试基础学习目标:基于敏捷的软件研发基础知识,并同时掌握关于软件基础运行环境的相关知识,为后续课程学习奠定基础,并进而可以胜任手工测试工程师的工作。
完成项目:测试管理工具,Linux操作系统,MySQL数据库
第二阶段、编程语言学习目标:熟练掌握java与python编程语言数据类型、运算符等。
完成项目:Java环境及Intellij IDEA使用,Python环境及Pycharm使用,为后续的web和app自动化测试奠定基础。
第三阶段、web自动化学习目标:熟练掌握web自动化Selenium基础、环境,自动化测试模型,可以胜任web自动化测试工程师是工作。
完成项目:Selenium源码分析,多浏览器运行测试,多平台多浏览器运行测试,各种驱动支持
第四阶段、app自动化学习目标:掌握Appium基础、环境、应用、实战等。
完成项目:获取app信息
第五阶段、接口测试学习目标:熟练掌握接口测试基础,接口测试自动化,进阶高级软件测试工程师。
完成项目:TestNG的批量接口执行
第六阶段、Jmeter性能测试学习目标:Jmeter基础、进阶等。
完成项目:性能测试(容量、稳定性)项目实战
第七阶段、Jenkins持续集成学习目标:持续集成简介、持续集成环境搭建
完成项目:使用Jenkins运行接口测试用例
啄木鸟学院老师建议大家从学习路线去着手,一探究竟,真正了解清楚!
梦朦胧6620
不用问,只要你稍微用心学了,你已经具备了。1、windows搭建环境 刚进公司的话,基本不用你来做的。除非你进的公司,你是第一个测试人员2、C编程,看具体工作,一般也用不上3、软件缺陷与... 这个有用4、高校设计测试用例... 最有用5、白盒测试.. 估计接触不到6、linux操作平台... 看具体测试项目7、wbe技术与数据库... 只能说能用到8、高效使用自动测试工具qtp·loadrunner·DC... 20%用到可能性
一人一兀
软件测试主要是学什么呢
优就业软件测试课程内容刚刚迭代升级,新增移动端测试,包括App兼容性测试,7*24小时稳定性测试,功耗性能测试,UI测试,交互测试等,课程主要学习的内容有:
1、功能测试
主要包括计算机基础、软件测试核心理论、Linux、数据库,学习目标是掌握软件测试核心理论,结合Linux、数据库等可实现移动端、web端的功能测试。学完可胜任功能测试工程师的职位。
2、自动化测试
主要学习Python、自动化测试入门、Web自动化测试、App自动化测试,培养方向是掌握自动化测试各类元素定位和操作方法;掌握自动化测试框架unittest使用和断言方法;掌握自动生成测试报告的方法。学完可胜任自动化测试测试工程师的职位。
3、接口测试
主要学习接口测试核心理论、接口测试工具Jmeter、接口测试工具Postman、抓包工具Fiddler、Jenkins持续集成、Python实现接口测试。
4、性能测试
性能测试理论、虚拟脚本生成器操作、场景设计、报告生成和分析,学习目标是掌握性能测试理论知识,能运用性能测试工具LoadRunner和Jmeter做性能测试,测试出系统的性能情况。
学习软件测试工程师需要什么基础
首先要掌握软件测试的基本理论,最好了解数据库的基本操作,最好了解一种脚本语言。其实软件测试的基本理论比较简单,现在有很多数据。数据库的基本操作,一般是添加、删除、修改、检查、备份、恢复等。
软件测试是大致分为黑盒测试和白盒测试和黑盒测试的重点是外部结构程序,不管内部逻辑结构,主要针对软件界面和软件功能测试,,黑盒测试一般不需要的软件开发基础。
只需要回到掌握软件测试的基本理论,比较注重经验的积累,进入后期是很容易的,很多非计算机相关专业的朋友转学基本上都是以功能测试为主。
(2)软件测试要学些什么条件扩展阅读:
软件测试的另一种分类方法是功能测试和性能测试。功能测试基本上是黑盒测试,而性能测试需要涉及系统瓶颈的定位和调优。通常,掌握数据库知识是必要的,最好了解一种脚本语言,如JAVA或C。
程序是由人编写的,错误是不可避免的,但这也因为它们是由程序员编写的,而程序员对底层逻辑和可能出现的问题有一个大致的概念。
测试工程师的工作是告诉他有问题的数据的ID、发生问题的场景、测试数据在当时的样子,等等。而不是向程序员抛出屏幕截图并说:“这里有问题。”
似乎很多测试工程师都喜欢学习Python,对于代码初学者来说,Python确实是一种非常友好的语言。然而,对于测试工程师来说,
测试工程师每天都要面对程序中的“bug”,而程序员每天都要创建代码。至少作为一个垃圾代码的创造者,我讨厌犯错误。所以在我看来,在考试中保持平静是非常困难的,因为不知道什么时候会犯一个奇怪的错误。
白盒测试需要有开发的基础,因为代码所涉及的遍历,现在国内白盒测试的人远远少于黑盒测试的人,白盒测试的工程师有很多软件开发工程师都转到了软盒上。
请问学软件测试需要什么文凭
测试的入门要求并不高,只要熟悉系统的流程,然后点点点,找缺陷,看有什么地方不合理的等等,但要进阶的话,要熟悉各种工具以及看文档,有些工具不是汉化的,要看英文,跟学历没直接关系,文凭只是个敲门砖而已。
学习软件测试需要什么基础
软件测试大致分为黑盒测试和白盒测试,黑盒测试着眼于程序外部结构,版不考虑内部权逻辑结构,主要针对软件界面和软件功能进行测试,黑盒测试一般不需要软件开发基础,只需要掌握基本的软件测试理论,比较注重后期的经验积累,入门也较容易,很多非计算机相关专业的朋友转行做测试以后也基本以功能测试为主。 白盒测试需要具备开发的基础,因为涉及的到代码的走查,现在国内做白盒测试的人要远远少于黑盒测试,白盒测试工程师很多都是软件开发工程师转软过来的。 软件测试的另一个分类方法是分为功能测试和性能测试,功能测试基本上就是黑盒测试,性能测试需要涉及到系统瓶颈的定位和调优,一般需要掌握数据库知识,最好会一门脚本语言,如JAVA或C。 综上,想从事软件测试,首先要掌握软件测试的基本理论,最好会数据库的基本操作,最好会一门脚本语言。其实软件测试的基本理论比较容易,现在各种资料也很多。数据库的基本操作,一般是增删改查备份还原等。 如未详尽,可以给我发私信联系。
好的软件测试人员需要具备哪些条件
优秀的测试员需要的条件
一、系统思维能力
无论是出软件测试方案,还是用例设计,测试建模,场景化分析等都需要具备一定的系统思维,环环相扣,把遗漏风险降到最低。也是个人提升的必备
二、项目管理能力
测试人员最终的目标是评估质量风险与风险控制,但质量并非是靠测试测出来的,而是在产品未孵化前的规划就开始了,所以了解整个项目管理流程才可以实现对各个阶段的质量把控。
三、沟通表达能力
以上案例中已提到过,无论是日常工作与其他跨部门团队的沟通还是晋升的竞聘环节,以及面试过程中对自我的展示,都需要良好的沟通表达,再优秀的技术也需要靠表达去实现继承和运用。
四、领导管理技能
测试人员的发展方向除了专家路线就是管理方向,当然技术管理还是要以技术为本的,所以领导力会显得尤其重要,但无论专家还是管理路线,拥有一定经验后需要做出决策以及测试策略如何让别人信服就需要一定的领导力了,而领导力是可以有意培养的。
五、观察能力
一般做过技术人员面试官的都会有些微表情,或面试心理学的知识储备,如何快速识别需要靠长期的细节观察能力来判断候选人。知己知彼百战百胜,不仅仅是面试官还有一些测试人员转为业务专家或顾问后会更有学习的必要。
六、导师能力
有一定经验的测试人员即使没做到管理层,也会被委任做某个方向的导师或培训人员,这时如何从自己学习到传播给他人知识会有个转变,也是工作的一部分,为测试组知识库与技术储备贡献力量。工作一定时间后,就需要有意识的培养这方面的能力了。
(5)软件测试要学些什么条件扩展阅读:
优秀测试员需要的素质
1、有探索精神:不要害怕进入陌生环境,勇于探索。善于发现问题的症结,要喜欢解迷。
2、自信心:测试者必须对自己的观点有足够的自信心。自信心是现在多数测试者都缺少的一项素质,尤其在面对需要编写测试代码等工作的时候,往往认为自己做不到。要想获得更好的职业发展,测试者应该努力学习,建立能“解决一切测试问题”的信心。
3、责任心:责任心是做好工作必备的素质之一,测试者更应该将其发扬光大。如果测试中没有尽到责任,甚至敷衍了事,这将会把测试工作交给用户来完成,很可能引起非常严重的后果。
4、专心:测试者在执行测试任务的时候要专心,不可一心二用。高度集中精神不但能够提高效率,还能发现更多的软件缺陷,业绩最棒的往往是团队中做事精力最集中的那些成员。执行测试工作时候要细心,认真执行测试,不可以忽略一些细节。
5、耐心:需要有难以置信的耐心。有时你需要花费惊人的时间去分离、识别和分派一个错误。很多测试工作有时候显得非常枯燥,需要很大的耐心才可以做好
软件测试人员要什么学历呢
作为软件质量控制中重要的一环,软件测试工程师基本上处于地位高,待遇好(当然,我所说的是真正意义上的软件测试工程,而非“点点点”的测试员)。目前软件测试的人才需求缺口也越来越大。 在你想成为一个软件测试工程师之前,你要保证你的学历是大专及以上,这也是进入IT行业的必备条件之一。另外,你还要具备一定的逻辑思维,学习能力。除了这两点,你还需要拥有一颗持之以恒的学习之心。IT(包含软件测试)是一个需要不断去学习的行业,这样你才不容易被技术更新淘汰。
做软件测试需要具备哪些技能
1、测试用例
测试用例是测试的根本,良好的测试用例,对测试起到的作用不言而喻。所以对于一个有一定基础的测试新人,应首先学习如何编写合理、有效的测试用例,同时,高效的执行测试用例,也是可以思考的问题。
2、测试方法
测试的方法有很多种,每种方法如何使用,使用的技巧,应做为一个重点去学习,毕竟快速、尽量多的发现BUG,是测试人员工作中重要的一个环节。
3、测试工具
自动化测试工具、测试管理工具、配置管理工具、其它测试辅助工具的使用,有一定的了解,能使用它提高测试工作的效率。
4、业务知识(需求理解)
能快速了解被测程序的业务知识及功能使用。对被测试对象有一个全面而正确的理解是做好测试工作的前提。即测试人员要知道它的业务流程、功能使用等。
5、文档撰写
文档在测试流程中有着举足轻重的地位,测试人员经常见到的,如:用例设计、缺陷报告、测试方案、测试计划等。所以,要成为一名优秀的测试人员或向上有一个好的发展,除了技术因素,良好的文档及文字处理能力也是不可或缺的。
6、操作系统使用与维护
熟悉当前最流行的操作系统,包括MS的Windows系列、Linux系列。比如现在使用比较多的是MS的Windows xp。熟知起码的操作和快捷键使用,熟练常用工具安装卸载。
7、熟练使用Word 、Excel,文字输入
编写测试用例、测试报告(BUG单)、软件使用手册是测试工程师必不可少的工作,因此word、Excel常用功能使用必须要熟练,如常用的插入图片、表格绘制等。快速的文字输入,也是体现工作效率的一个方面。
8、能处理日常工作中经常出现的计算机问题。除了会使用计算机,学会如何修理他,如何更好的使用它也是很重要的功课。
9、沟通技巧
学会和团队内部人员的沟通,学会如何与程序员打交道。沟通是人学习和进步的一个捷径。做为一个新人也许会有很多地方不足,如技术上的缺陷,公司业务的不了解,良好的沟通可以尽快的弥补不足。
10、学习能力
主动、自觉、积极是必须的,他人教授的知识往往太有限,不能等到知识要用的时候才去学,要在平常的学习中积累。现在的技术日新月异,不会很正常,学习即可,须知人皆由学习从无知者变成智者。
软件测试需要学习那些基础知识啊
想要了解软件测试需要学习哪些基础知识,这里整理了一份软件测试系统全面的学习路线,希望可以帮助你~
第一阶段:专业基础课程
阶段目标:
1. 熟练掌握IT核心技术:编程,数据库,操作系统,版本控制
2. 能够熟练运用所学技术搭建各类服务器环境
3. 深入理解软件研发过程各种疑难杂症及处理手段
4. 掌握Python编程技术并熟练运用Python进行程序设计
知识点:
1、Web页面元素,布局,CSS样式,盒模型,JavaScript程序设计,函数,基础算法,正则表达式。
2、数据库知识,范式,MySQL配置,命令,建库建表,数据的增删改查,约束,视图,存储过程,函数,触发器,事务,游标,建模工具深入理解数据库管理系统通用知识及MySQL数据库的使用与管理。为软件测试和测试开发打下基础。
3、Linux安装配置,文件目录操作,VI命令,管理,用户与权限,环境部署,Shell编程Linux作为一个主流的服务器操作系统,是每一个测试开发工程师必须掌握的重点技术,并且能够熟练运用。
4、Python编程基础,语法规则,函数,数据类型,PDBC,培养扎实的Python编程基本功,同时对Python核心对象编程有熟练的运用。
5、Python面向对象,异常处理,文件IO,多线程,网络编程,PyQT界面开发,深入理解面向对象编程,异常处理机制,多线程原理,网络协议知识,并熟练运用于项目中。
第二阶段:专业核心课程
阶段目标:
1. 熟练应用所学知识完成一个标准的软件测试项目
2. 熟练运用Python完成GUI测试,接口测试和性能测试开发
3. 对测试开发技术体系和实现原理有深入的理解
4. 灵活运用测试开发技术解决项目中的各种问题
知识点:
1、软件工程,软件质量,系统测试流程,方法,专业术语,测试用例设计,禅道管理工具,测试报告,缺陷管理理解软件工程的各类实际问题,理解系统测试的理论、方法与过程,熟练运用测试用例设计方法高效设计测试用例。
2、测试需求分析,测试方案设计,测试用例设计,测试项目实施,缺陷报告与测试报告,深入理解系统测试各个过程和关键环节,熟练完成系统测试项目。
3、SikuliX框架,UIAutomation框架,Selenium WebDriver框架,基础框架,Android应用,Monkey测试,Appium移动端测试框架,UIAutomator2移动端测试框架综合运用各类应用操作平台,完成各种自动化测试框架的学习和应用,深入理解GUI自动化测试技术及相应框架的测试开发。
4、Python单元测试框架,网络通信协议,HTTP与HTTPS协议,WebService与WebSocket协议,Python的接口测试库,PostMan与SoapUI接口测试工具通过对代码级接口测试和协议级接口测试的测试开发实战,灵活运用Python开发接口测试脚本,熟练运用各类接口测试工具。
5、性能测试原理,指标体系,场景设计,实施过程,JMeter工具应用,BeanShell脚本开发,Python+Locust性能测试框架深入理解性能测试技术体系和方法论,熟练运用JMeter性能测试工具和Locust性能测试框架实施对任意系统的性能测试。
第三阶段:综合实战项目
阶段目标:
1. 将软件测试和测试开发技术灵活运用于项目中
2. 具备较强的测试开发能力,独立完成测试开发项目
3. 综合运用软件测试技术,满足企业中高级人才需求
4. 对所学技术有深入的理解并具备独立解决问题的能力
知识点:
1、测试需求分析,同行评审,测试计划,测试方案,测试用例,配置管理,持续集成。通过对大型企业级应用系统的测试项目实战,强化理解系统测试项目的实施过程与技术细节。
2、接口测试设计与实施,回归测试,冒烟测试,安全性测试,RobotFramework框架应用,UI自动化实战将各类自动化测试技术结合项目实战演练,强化对自动化测试技术的运用,同时掌握更多的测试框架。
3、性能测试项目实战,LoadRunner性能测试工具,总结通过综合项目实战,将全套测试技术融入到项目中,强化学习效果和项目经验。
4、Python原生测试框架开发,包括Monkey,UI,图像识别,云测试平台,HTML测试报告,持续集成,KDT关键字驱动框架开发等原生技术实现通过大量的Python原生代码开发,深入理解自动化测试开发技术的底层实现原理,完全抛弃对工具的依赖,做到真正的测试开发技术。
5、基于测试框架的设计思路和实现手段,自主实现一套测试框架能够独立完成一套自动化测试框架,并能够直接用于实际项目中。
6、持续集成与Jenkins,安全性测试原理与工具,Python爬虫开发与Scrapy框架,提升软件测试其它类技术,增强知识面,提升竞争力,助力职业发展。
补充知识
1、算法进阶,图像处理,视频处理,加密解密,压缩算法。
2、UML统一建模语言、五种图、类图、类图详解、用例图、时序图。
3、Dubbo分布式开发框架,Oracle关系型数据库管理系统,MongoDB非关系型数据库管理系统。
4、大数据开发框架Hadoop/MapRece/Spark。
5、Android与iOS的原生应用开发与WebApp开发。
6、OpenCV图像处理框架、TensorFlow深度学习框架,Lucene全文搜索引擎与中文分词框架Ik-Analyzer,视频处理算法与框架等。
小囡1234
软件测试相关的定义、以及流程。必不可少的测试工具是基础。至于windows、linux、wbe技术与数据库等等,这些内容的掌握可以略浅,但是这些恰恰是工作中需要巩固和加强的。
scropio123
初级软件测试工程师基本要求:按照软件测试方案和流程对产品进行功能测验,检察产品是否有缺陷。
按其级别和职位的不同,可分为三类:
高级软件测试工程师,熟练掌握软件测试与开发技术,且对所测试软件对口行业非常了解,能够对可能出现的问题进行分析评估;
中级软件测试工程师,编写软件测试方案、测试文档,与项目组一起制定软件测试阶段的工作计划,能够在项目运行中合理利用测试工具完成测试任务;
初级软件测试工程师,其工作通常都是按照软件测试方案和流程对产品进行功能测验,检察产品是否有缺陷。
扩展资料:
软件测试原则:
1、测试应该尽早进行,最好在需求阶段就开始介入,因为最严重的错误不外乎是系统不能满足用户的需求。
2、程序员应该避免检查自己的程序,软件测试应该由第三方来负责。
3、设计测试用例时应考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况下还要制造极端状态和意外状态,如网络异常中断、电源断电等。
4、应该充分注意测试中的群集现象。
5、对错误结果要进行一个确认过程。一般由A测试出来的错误,一定要由B来确认。严重的错误可以召开评审会议进行讨论和分析,对测试结果要进行严格地确认,是否真的存在这个问题以及严重程度等。
6、制定严格的测试计划。一定要制定测试计划,并且要有指导性。测试时间安排尽量宽松,不要希望在极短的时间内完成一个高水平的测试。
7、妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。
参考资料来源:百度百科——软件测试工程师
阳光白龙
1、软件工程技能你必须了解软件软件工程(设计、开发和简单测试),应用,系统,自动测试编程,及操作系统,数据库,网络系统和协议的设计和使用。 2、交流技巧如果想确定软件缺陷,你应当能够指出什么时候的缺陷算是缺陷。 3、组织技能如果你在别人都头脑发昏的时候保持清醒,你就可能是一个好的软件测试工程师。在网络时代软件测试是一项有压力的复杂性工作,但如果你能从这些纷繁中找到一种途径,它就是一项回报丰厚的事业。 4、实践技能当一个工作需要经验,而你又需要一个工作去丰富你的经验时该怎么办?这并不完全是一个两难的问题,你可能采用几种方式去获得实际经验。 5、态度除了技术水平,你需要理解和采取适当的态度去做软件测试。 我的建议是阅读Roger Pressman的软件工程:A Practitioner's Approach, fifth edition (职业入门,第五版,McGraw Hill, 2000年版)和 Glenford Myers的The Art of Software Testing(软件测试艺术,John Wiley & Sons, 1979年版)。Pressman的书是一个对软件工程原理的全面介绍。有很多关于软件技巧、项目管理、要求分析和软件设计等软件工程方面的好书,但Pressman对这些方面在一本书里作了介绍。Glenford Myers不到二百页,1979年发行,却是软件测试方面的圣经。Myers定义及诠释的测试方法论已成为软件测试的基本模块。 Myers还考查了软件测试中的经济(缺陷的代价)和心理学方面(测试的目标就是发现失误及不成功之处),以及主导软件开发和测试的基本原则。
优质工程师考试问答知识库