软件测试技术专业怎么样
软件测试技术专业是电子信息大类下的一个本科专业。
培养目标:该专业培养掌握软件开发及软件测试基础知识和基本技能的实用性软件人才,至少熟练掌握业内常用的一种测试工具。
可从事计算机初级编码或开发、软件测试、软件技术服务和销售等技术工作。
开设课程:C语言程序设计、JAVA、软件工程与项目管理、数据库原理与应用、Linux操作系统、网络应用技术、软件测试技术、软件测试过程管理、软件测试自动化、GUI设计及测试、软件质量管理、IT英语等。
做软件测试需要具备哪些技能?
1、 软件测试基础知识:测试计划编写、设计测试用例、编写测试报告、编写BUG报告单、跟踪BUG修复情况、还需要良好的沟通能力、以及各种测试阶段所使用的测试方法、单元测试、功能测试、集成测试、系统测试等等、CMMI /ISO90012、 各种测试工具的使用:我们在测试的工作中为了能够提高工作效率进程会用到很多工具、QTP、LR、QC、TD、Bugfree、VSS、SVN等等工具、虽然说工具不是万能的但是工具能为我们提高工作效率所以不能吧工具当神一样看待、但是必须得会熟练的使用3、 操作系统相关知识:Windows、linux、uinx这些都必须会使用、而且不仅仅是简单的操作、一般的服务管理、注册表编辑、命令行操作都需要会、可以想象下一个连apache服务都不会安装配置的人、谁能想象你可以做好基于apache环境的测试工作、什么?不知道怎么查看磁盘压力、IO数据。
windows linux都有提供自带的工具可用于查看这些数据、perfmon、top什么的。
4、 数据库知识:现在Oracle的DBA待遇比一般的开发人员待遇还高就知道数据库在企业中的重要性了、作为测试人员虽然不需要有DBA的能力、但是基本的数据库操作你必须得会把、不管是Oracle、DB2、MSsql还是mysql最少都应该能熟悉使用其中的一二。
5、 计算机硬件知识:做过性能测试的朋友都知道在性能测试过程中硬件性能也是一个非常重要的指标、CPU、内存、IO、带宽等等、如果你是做硬件测试的。
那么就更不用说了。
交换机、路由器、防火墙这些设备都需要有所了解。
6、 网络协议:如果你还知道TCP和UDP有什么不一样的话请赶快去补充点知识吧、互联网时代、一切都通过网络传输、常用协议必须得了解、曾经面试了一个测试工程师做了2年的测试居然不知道自己测试软件使用什么协议、这样的人是你的话你敢招么?7、 开发语言即代码编写能力:虽然不会写代码也能做测试、但是如果你想做到高级测试工程师以上、那么代码编写能力就是必选项、如果不会写代码、那么你不可能成为高级测试。
高级测试工程师的一部分工作就是在写测试工具。
虽然测试也需要写代码但不需要和开发一样那么精通某一门语言、可是测试却需要了解很多门开发语言(举一个简单的例子:你现在所在的项目从C++语言、2年后你换工作了、新公司的开发语言是java或者是VB什么的)所以在开发语言中测试需要更广的学习。
8、 行业知识:行业知识之所以写在最后面是因为前面的7条我们都可以通过学习来掌握、但是唯独行业知识却只能通过工作经验来积累、不要说你去看几本书就知道通信行业、医疗行业、或者是航天行业、你认为在书本上面能学到么?由于行业知识的特殊性所以建议朋友们不要频繁的跳槽、经验的积累是需要时间来沉淀的。
9、 具有一定的美学观:这个说起来比较拗口一点、简单来说不管是开发活动还是测试活动、最后的目标就是将产品推向市场、而且得到用户的认可。
所以如果产品在需求分析阶段就出现了偏离用户航道、那么就算测试 开发做得再好这个项目也是一样会失败。
所以各位如果有幸能够参加需求评审的话、请不要吝啬你的言论。
10、请不要忘记时刻学习着:这点我相信大家应该都能理解所以不用写什么:仅此一点“不学习就会落后”总结:说了那么多技能或者是说是需要掌握的技术、如果你没有一颗发现缺陷之美的心态、没有一颗以提高质量为前提来投入工作中、那么就算你其他做得再好也不过是万千软件测试从业人员中的一枚。
测试活动大部分用于发现缺陷、而发现缺陷之后的工作尤为重要:怎么样从发现缺陷到提高质量。
软件测试工作真的很简单无技术难度吗
后来我们分析了原因发现一些规律,这些同行因为对软件测试了解很少(这方面测试行业有责任),所以觉得这个工作很简单没啥技术含量于是就简单测试了,加上软件发布后用户碰到的问题多时,自己更没有成功感。
于是就进入了一个负向循环:认为测试工作简单没技术追求-〉也没有对自己的测试技术能力进行精益求精的追求进步了—认为测试工作简单无追求 。
为什么软件发布后还有较多缺陷呢? 谁能搞定这些缺陷?开发技术都能搞定?——很显然开发搞不定这类问题,所以才需要测试人员来专业解决问题。
认为测试工作简单无追求的朋友,为啥没有轻松解决较多缺陷遗留的问题呢?既然软件发布后还被用户碰到较多缺陷,说明我们测试工作还有很多事可做,还欠缺一些技术。
至少是要比现在做得更好才行。
虽然很多人认为:软件测试就是写用例,执行用例,最多用用工具,搞搞自动化。
的确这些是软件测试的基本活动,可是软件测试工作要做好,要减少缺陷被用户碰到,不仅仅是做完这些活动。
如何写好用例?如何执行用例更高效?这些也是我们测试工作持续进步,不断挑战和提升的地方。
以我在软件测试行业的经验和体会,个人认为软件测试的技术至少在三个大领域值得我们去探索和挑战:
作为一个软件测试工程师应具备哪些技能
计算机领域的专业技能是测试工程师应该必备的一项素质,是做好测试工作的前提条件。
尽管没有任何IT背景的人也可以从事测试工作,但是一名要想获得更大发展空间或者持久竞争力的测试工程师,则计算机专业技能是必不可少的。
计算机专业技能主要包含三个方面:⒈ 测试专业技能测试专业知识很多,本书内容主要以测试人员应该掌握的基础专业技能为主。
测试专业技能涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。
⒉ 软件编程技能软件编程技能实际应该是测试人员的必备技能之一,在微软,很多测试人员都拥有多年的开发经验。
因此,测试人员要想得到较好的职业发展,必须能够编写程序。
只有能够编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。
此外,对软件测试人员的编程技能要求也有别于开发人员:测试人员编写的程序应着眼于运行正确,同时兼顾高效率,尤其体现在与性能测试相关的测试代码编写上。
因此测试人员要具备一定的算法设计能力。
依据资深测试工程师的经验,测试工程师至少应该掌握Java、C#、C++之类的一门语言以及相应的开发工具。
⒊ 网络、操作系统、数据库、中间件等知识与开发人员相比,测试人员掌握的知识具有“博而不精”的特点,“艺多不压身”是个非常形象的比喻。
由于测试中经常需要配置、调试各种测试环境,而且在性能测试中还要对各种系统平台进行分析与调优,因此测试人员需要掌握更多网络、操作系统、数据库等知识。
在网络方面,测试人员应该掌握基本的网络协议以及网络工作原理,尤其要掌握一些网络环境的配置,这些都是测试工作中经常遇到的知识。
操作系统和中间件方面,应该掌握基本的使用以及安装、配置等。
例如很多应用系统都是基于Unix、linux来运行的,这就要求测试人员掌握基本的操作命令以及相关的工具软件。
而WebLogic、Websphere等中间件的安装、配置很多时候也需要掌握一些。
数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。
因此不但要掌握基本的安装、配置,还要掌握SQL。
测试人员至少应该掌握Mysql、MSSqlserver、Oracle等常见数据库的使用。
作为一名软件测试工程师,需要具备哪些能力
从事软件测试的人员很多,大家都觉得门槛低,企业需求量大,很容易找到工作。
但是从事一段时候后,很容易迷茫,很想证明自己在这个测试行业的能力,除了自我的学习已经领导的肯定之外,更加需要证书来帮我们证明,那么作为测试人员,可以考哪些证书呢?方法/步骤1 软件评测师(国家软考认证) 软件评测师考试属于全国计算机技术与软件专业技术资格考试(简称计算机软件资格考试)中的一个中级考试,是软件测试行业认可度比较高的一个证书。
软考属于专业水平的国家品牌考试,试题注重岗位知识和技能,综合性和灵活性强,创意多,如果有实际的工作经验,通过率会比较高,涉及考试的点还是很广的。
2 ISTQB(国际软件测试资格认证) 有这个证书的话,进外企之类的一般比较有用,在国内,考这个证书的人数还是没有软件评测师高,而且考整个证书的花费很大。
ISTQB作为国际性的软件测试工程师认证,社会认可度还是挺高的。
越来越多的跨国公司和从事软件外测试外包的公司要求软件测试人员需要获得ISTQB认证。
3 PMP(美国项目管理协会项目经理认证) PMP(Project Management Professional)指项目管理专业人员资格认证。
它是由美国项目管理协会Project Management Institute(PMI)发起的,严格评估项目管理人员知识技能是否具有高品质的资格认证考试。
要想获得PMP专业认证,考生须达到美国项目管理协会(PMI)规定,对项目管理专业知识的掌握程度及其相应的工作经验和要求;另一方面,获得PMP证书的专业人员应继续从事项目工作,以不断适应项目管理发展的要求!总之,考这个证书的话,需要先进行一定的培训,总之,花费也是比较大的4 CSTE(QAI旗下的软件测试认证) CSTE全称Certified Software Tester,是QAI(Quality Assurance Institute)旗下的重要认证。
该全球范围的测试认证已经在美国、印度等颇为普及,成为很多公司对于测试从业人员的要求之一。
但是在中国,考这个证书的人只占了少部分。
CSTE的考试主要涉及了测试人员的基本知识和流程,考试全英文,包括四个部分,两个部分理论两个部分实践。
全英文试卷,对于软件测试的很多人来说,都会望而却步的。
基本要求:1.熟悉软件质量、软件测试及软件质量保证的基础知识;2.掌握代码检查、走查与评审的基本方法和技术;3.掌握白盒测试和黑盒测试的测试用例的设计原则和方法;4.掌握单元测试和集成测试的基本策略和方法;5.了解系统测试、性能测试和可靠性测试的基本概念和方法;6.了解面向对象软件和WEB应用软件测试的基本概念和方法;7.掌握软件测试过程管理的基本知识和管理方法;8.熟悉软件测试的标准和文档;9.掌握QESuite软件测试过程管理平台和QESat/C++软件分析和工具的使用方法。
考试内容:一、软件测试的基本概念1.软件质量的概念。
2.软件测试的目标和原则。
3.软件测试的心理学。
4.软件测试的经济学。
5.软件质量保证。
二、软件测试的类型及其在软件开发过程中的地位1.软件开发阶段。
2.规划阶段的测试。
3.设计阶段的测试。
4.编码阶段的测试。
5.验收和维护阶段的测试。
三、代码检查、走查与评审1.桌面检查。
2.代码走查。
3.代码检查。
4.同行评审。
四、覆盖率(白盒)测试1.覆盖率测试。
2.逻辑结构的覆盖率测试。
3.路径覆盖率测试。
4.数据流测试。
5.程序变异测试。
6.基于覆盖的测试用例选择。
五、功能(黑盒)测试1.边界值测试。
2.等价类测试。
3.基于因果图的测试。
4.基于决策表的测试。
5.基于状态图的测试。
6.基于场景的测试。
7.比较测试。
六、单元测试和集成测试1.单元测试的目标和模型。
2.单元测试策略。
3.单元测试分析。
4.单元测试的测试用例设计原则。
5.集成测试基本概念。
6.集成测试策略。
7.集成测试分析。
8.集成测试用例设计原则。
七、系统测试1.系统测试概念。
2.系统测试方法。
3.系统测试的实施。
八、软件性能测试和可靠性测试1.软件性能的概念。
2.性能测试的执行。
3.软件可靠性的概念。
4.可靠性预计。
5.可靠性分析方法。
6.软件可靠性测试的执行。
九、面向对象软件的测试1.面向对象软件测试的问题。
2.面向对象软件测试模型。
3.面向对象软件的测试策略。
4.面向对象软件的单元测试。
5.面向对象软件的集成测试。
6.面向对象软件的系统测试。
十、Web应用测试1.应用服务器的分类和特征。
2.Web应用系统的特点。
3.Web应用系统的测试策略。
4.Web应用系统测试技术。
5.Web应用系统安全测试。
十一、其他测试1.兼容性测试。
2.易用性测试。
3.GUI测试。
4.构件测试。
5.极限测试。
6.文档测试。
十二、软件测试过程和管理1.软件测试过程概念。
2.测试组织管理。
3.测试计划的制定。
4.测试步骤的确定。
5.测试环境管理。
6.软件测试风险分析和成本管理。
7.测试文档管理。
8.测试的复用与维护。
十三、软件测试自动化1.测试自动化的原理、方法。
2.测试用例自动生成。
3.测试执行自动化。
4.测试结果比较自动化。
5.测试工具的分类和选择。
6.测试工具的主流产品介绍。
十四、软件测试的标准和文档1.软件测试的标准。
2.软件测试的文档。
十五、软件测试实践1.软件测试过程管理。
(1)软件测试过程管理概念。
(2)测试的设计...
软件测试技术分享,软件测试技术有哪些
1,软件测试是找出软件已经存在的错误,而调试是定位错误,修改程序以修正错误.2,软件测试从一个已知的条件开始,有预知的结局 而调试从未知的条件开始,其结局不可预知3,软件测试可以计划,可以预先制定测试用例和过程,工作进度可以度量.而调试不能计划,进度不可度量.4,调试是在测试之后,在方法,思路,策略上都有所不同.5,测试的对像可以是文档和代码 而调试的对像只能是代码 6.调试是随机性的 由程序员完成 为了程序可运行测试是有目的性的 由测试人员完成 为了程序可完成指定功能软件测试是为了发现错误而执行程序的过程。
或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。
软件测试与调试在目的、技术和方法等方面存在很大的区别,主要表现在如下方面: (1) 测试是为了发现软件中存在的错误;调试是为了证明软件开发的正确性。
(2) 测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
(3) 测试是有计划的,需要进行测试设计;调试是不受时间约束的。
(4) 测试经历发现错误、改正错误、重新测试的过程;调试是一个推理的过程。
(5) 测试的执行是有规程的;调试的执行往往要求开发人员进行必要推理以至知觉的"飞跃"。
(6) 测试经常是由独立的测试组在不了解软件设计的条件下完成的;调试必须由了解详细设计的开发人员完成。
(7) 大多数测试的执行和设计可以由工具支持;调式时,开发人员能利用的工具主要是调试器。
测试的目的是显示存在错误,而调试的目的是发现错误或导致程序失效的错误原因,并修改程序以修正错误。
调试是测试之后的活动。
测试和调试在目标、方法和思路上都有所不同,如下: 1 、测试从一个已知的条件开始,使用预先定义的过程,有预知的结果。
调试从一个未知的条件开始,结束的过程不可预计。
2 、测试过程可以实现设计,进度可实现确定。
调试不能描述过程或持续时间。
3 、测试是显示错误的行为。
调试是推理的过程。
4 、测试显示开发人员的错误。
调试是开发人员为自己辩护。
5 、测试能预期和可控。
调试需要想象,经验和思考。
6 、测试能在没有详细设计的情况下完成。
没有详细设计的信息调试不可能进行。
7 、测试能由非开发人员进行。
调试必须由开发人员进行。
软件测试工程师需要掌握什么技术?
要学的东西可多了! UMTS蜂窝移动通信网络结构 CDMA2000-1X蜂窝移动通信网络组件功能 UMTS蜂窝移动通信网络组件功能 码分多址(CDMA)的原理 UMTS网络相关无线技术 CDMA2000-1X蜂窝移动通信网络结构 ATM技术 CDMA2000-1X网络的信道 UMTS协议体系 CDMA2000-1X网络系统状态 码分多址(CDMA)的原理 IP路由技术 WCDMA在UMTS网络中的实现 IP隧道技术 UMTS网络的空中接口技术 AAA服务技术 UMTS网络的移动性管理 CDMA2000-1X的分组交换解决方案1-简单IP技术 UMTS网络的切换技术 MOTOROLA的CDMA2000-1X蜂窝移动通信系统实例 UMTS网络的功率控制技术 CDMA2000-1X的分组交换解决方案3-移动IP技术 MOTOROLA的UMTS蜂窝移动通信系统实例 码分多址(CDMA)在CDMA2000-1X网络中的实现 CDMA2000-1X、UMTS等移动通信技术简介 CDMA2000-1X的分组交换解决方案2-VPDN技术 从GSM/GPRS到UMTS的演进路线
软件测试真的需要的技术不高吗?
软件测试行业,在国内还处于发展阶段,比一般的文员,内勤等文职这类的工作,软件测试的工作环境,职业发展还是好的。
综合来说软件测试应该算是一个相对较好的职业。
从事技术行业的确主要靠不断的学习和累积经验。
去培训机构进行系统的学习的确是一个很好的选择。
要学软件测试,需要学的知识很多很繁杂,关键看你今后的职业发展了。
软件测试领域很广,比如网站测试、手机测试、应用软件测试等等,你应该更明确些,对应的学相应知识。
别怕_我_伤心