做软件测试都要会哪些?
、 软件测试基础知识: 测试计划编写、设计测试用例、编写测试报告、编写BUG报告单、跟踪BUG修复情况、还需要良好的沟通能力、以及各种测试阶段所使用的测试方法、单元测试、功能测试、集成测试、系统测试等等、CMMI /ISO9001 2、 各种测试工具的使用: 我们在测试的工作中为了能够提高工作效率进程会用到很多工具、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、请不要忘记时刻学习着: 这点我相信大家应该都能理解所以不用写什么:仅此一点“不学习就会落后” 总结:说了那么多技能或者是说是需要掌握的技术、如果你没有一颗发现缺陷之美的心态、没有一颗以提高质量为前提来投入工作中、那么就算你其他做得再好也不过是万千软件测试从业人员中的一枚。
测试活动大部分用于发现缺陷、而发现缺陷之后的工作尤为重要:怎么样从发现缺陷到提高质量。
软件测试包括哪些测试活动,测试主体分别是谁?
软件测试的活动是指对软件的功能、性能、安全性等多个方面,按照用户需求或一定的标准进行检查验证的过程。
实际上就是寻找软件中存在的缺陷和问题,以提高软件的质量。
主要活动包括编写测试计划和测试方案、提取测试需求、设计测试用例、执行测试用例、提交缺陷、回归测试等内容。
软件测试的主要内容有哪些?
软件测试的主要工作内容如下。
(1) 验证(verification),即保证软件正确实现某些特定功能的一系列活动。
(2) 确认(validation),即证实在一个给定的外部环境中软件逻辑正确性的一系列活动和过程。
(3) 具体内容,即包括软件开发期间各个阶段所产生的文档,如源程序、需求规格说明、概要设计文档、详细设计文档等。
软件测试是一个持续的过程,基本测试过程主要包含哪些活动
软件测试分为5个阶段,计划、设计、执行、评估、验收1、计划阶段,我们主要任务是编写测试计划,对进度的安排,人力物力的分配,整体测试策略的制定,和风险的评估与规避措施有一个制定,一般有测试主管编写,当然我们也会参与相关的评审工作。
2、设计阶段,我们主要任务是编写测试用例,会参考开发人员的需求分析、概要设计、详细设计等文档,有不明确的也会及时和开发沟通。
3、执行阶段,首先搭建测试环境,执行预测,以判定当前版本可测与否,如果预测通过,正式进入系统测试,遇到问题提交Bug单,具体测试轮次由开发质量和版本复杂程度决定。
4、评估阶段,出总结报告,对整个测试的过程作一个总结,对当前测试版本质量给一个评估。
5、 验收阶段,我们会出用户手册,操作指引,公司有严格的评审流程,以保障每一步输出的有效性。
软件测试计划一般都分为哪些主题?
软件测试定义是:为了发现程序中的错误而执行程序的过程它是帮助识别开发完成(中间或最终的版本)的计算机软件(整体或部分)的正确度(correctness) 、完全度(completeness)和质量(quality)的软件过程;是SQA(software quality assurance)的重要子域。
软件测试的目标:(1)测试是为了发现程序中的错误而执行程序的过程;(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;(3)成功的测试是发现了至今为止尚未发现的错误的测试。
软件测试的内容:软件测试主要工作内容是验证(verification)和确认( validation ),下面分别给出其概念:验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。
(Do the right thing) 1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。
确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。
即保证软件以正确的方式来做了这个事件(Do it right)1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;2.动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。
软件测试的对象不仅仅是程序测试,软件测试应该包括整个软件开发期问各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。
从不同的角度出发,软件测试可以划分为不同的分类:从是否关心软件内部结构和具体实现的角度划分A.白盒测试B.黑盒测试C.灰盒测试从是否执行程序的角度A.静态测试B.动态测试。
从软件开发的过程按阶段划分有A.单元测试B.集成测试C.确认测试D.验收测试E.系统测试
软件测试工具有哪些?
其次,可以实施基准测试,还可以编写测试用例。
TestManagerRational Testsuite中的一员:基于Web方式,因此只要安装了JDK这个工具就可以使用。
Jira是一个Bug管理工具,agile开发常用. 自带一个Tomcat 4;同时有简单的工作流编辑,可用来定制流程;数据存储在HSQL数据引擎中;(3)通过重复测试寻找瓶颈问题;自动发送Email,都可以测试。
不过至今还没有配成功过。
JMeter是一个专门为运行和服务器负载测试而设计:首先它可以测试服务器群集的性能, 教父级工具. vbs web app ji desktop app 都可以测selenium google 开源测试工具 web app 基本现在银行保险公司都用它、生成报表、管理缺陷以及日志等等,它的语言使用SQABasic。
Functional Tester它是Robot的Java实现版本,在Rational被IBM收购后发布的。
testcomplete也是要钱的webservicesoupui有免费版的。
由于是基于Java的软件,因此PureLoad可以通过Java Beans API来增强软件功能。
功能测试QTP 惠普公司;(4)从控制中心管理全局负载测试;(5)可验证应用的扩展性,属于Rational TestSuite中的一员,对于Visual studio 6编写的程序支持的非常好性能测试工具LoadRunner惠普的强大, 很好用,功能还行测试管理QC 惠普的除了要钱其他几乎是最好的TestDirectorMI的测试管理工具,也能够模拟各种浏览器和Modem速度,它的功能和性能可以与数万美元的产品媲美。
ACT或称MSACT,安装简单;有利于缺陷的清楚传达:E-Test Suite由Empirix公司开发的测试软件,与TestDirecotr和Testmanager比较起来是很light的、Oracle Forms、People Tools应用程序的支持。
要支持Delphi程序的测试还必须下载插件。
Rational Robot的语法使用Basic语法,一些程序员不会在意编写scrīpt的。
PureLoad一个完全基于Java的测试工具,它的scrīpt代码完全使用XML。
所以,同时还支持Java Applet、HTML、e-Load和e-Monitor,这三种工具分别对应功能测试、压力测试以及应用监控,能够和被测试应用软件无缝结合的Web应用测试工具。
工具包含e-Tester,编写scrīpt很简单;d。
它的主要特点为,它是微软的Visual Studio和Visual Studio.net带的一套进行程序压力测试的工具,可以用来模拟服务器或网络系统在重负载下的运行情况。
它也提供了一个可替换的界面用来定制数据显示,测试同步及测试的创建和执行。
WAS是Micro$oft提供的免费的Web负载压力测试工具。
此外,QALoad不单单测试Web应用;特点c;(6)快速创建仿真的负载测试;(7)性能价格比较高,不过可惜它并不是开源工具,有Lisence限制, 功能根据测试开发人员的能力而定,可以开发的极其强大.常和testng junit Cucumber jenkins 一起用WinRunner企业级的功能测试工具;系统灵活,可配置性很强。
ACT不但可以记录程序运行的详细数据参数,用图表显示程序运行情况,而且安装和使用都比较简单, 要钱a,支持的协议多且个别协议支持的版本比较高;b,负载压力测试方案设置灵活,可以与winrunner、Loadrunner、查询并产生报表,应用广泛。
WAS可以通过一台或者多台客户机模拟大量用户的活动。
WAS支持身份验证、加密和Cookies、管理测试进度等等,是测试管理的首选软件,可以用来编写测试用例、生成Datapool,丰富的资源监控。
OpenST的特点是可以模拟很多用户来访问需要测试的网站,它是一个功能强大。
通过自动录制、检测和回防用户的应用操作,从而提高测试效率。
QARun一款自动回归测试工具,与Winrunner比较学习成本要低很多;最后,可以生成高级脚本。
白盒测试LogiscopePRQAJunit testngNunitDevPartnerRational Purify、自定义设置功能完备的软件。
但是。
:(Bugzilla一个产品缺陷的记录及跟踪工具,它能够为你建立一个完善的Bug跟踪体系,包括报告,scrīpt的要求还比较高、QuickTestPro进行集成。
除了可以跟踪Bug外,每一部分功能相互独立,测试过程又可彼此协同。
相比较Bugzilla来说有不少自身的特点。
缺点是必须和其它组件一起使用,测试成本比较高。
TrackRecord一款擅长于Bug管理的工具;HTTP测试而设计的,但是它已经扩展以支持各种各样的测试模块。
它和HTTP和SQL(使用JDBC)的模块一起运行。
它可以用来测试静止或活动资料库中的服务器运行情况。
SilkPerformance。
不过要安装QARun必须安装.net环境,另外它还提供与TestTrack Pro的集成。
Rational Robot我经常使用的测试工具。
Benchmark Factory、处理解决等几个部分。
它的测试包含文字和图形并可以输出为HTML文件,结果阅读叶很方便,是一套较理想的测试工具。
OpenSTA它的全称是Open System Testing Architecture。
是一个企业级的强大测试管理工具,用于检测应用程序是否能够达到预期的功能及正常运行,自动执行重复任务并优化测试工作,从而缩短测试时间、100%的纯Java桌面运行程序。
原先它是为Web/。
当然这也是它的优点,报告可以导出到Word,还可以测试一些后台的东西,比如SQL Server等。
只要它支持的协议。
Jmeter Apache开源工具强大(接近Loadrunner), 很好用QALoad的特点:(1)....
软件测试分为哪几个阶段,每个阶段都是干什么的??
按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试。
单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标。
集成测试:对已测试过的模块进行组装,进行集成测试。
目的在于检验与软件设计相关的程序结构问题。
确认(有效性)测试:是检验所开发的软件能否满足所有功能和性能需求的最后手段。
有的划分方法中,也将确认测试合并入系统测试中。
系统测试:检验软件产品能否与系统的其他部分(比如,硬件、数据库及操作人员)协调工作。
验收(用户)测试:检验软件产品质量的最后一道工序。
主要突出用户的作用,同时软件开发人员也应有一定程度的参与。
验收测试可以分成Alpha测试和Beta测试。
Alpha测试是由用户在开发环境下完成的测试,Beta测试是由用户在用户环境下完成的测试。
现代软件测试活动都包括什么内容?
测试报告的版本 测试的人员和时间 测试所覆盖的缺陷——测试组在这轮测试中所有处理的缺陷,报告了测试组长处理的缺陷和实施工程师验证的缺陷。
不仅要写出覆盖缺陷的总数,还要写明这些缺陷的去向 测试新发现的缺陷数量 上一版本活动缺陷的数量 经过此轮测试,所有活动缺陷的数量及其状态分类 测试评估——写明在这一版本中,那些功能被实现了,那些还没有实现,这里只需写明和上一版本不同之处即可 急待解决的问题——写明当前项目组中面临的最优先的问题,可以重复提出另外一种测试报告的内容:l 测试资源概述——多少人、多长时间l 测试结果摘要——分别描述各个测试需求的测试结果,产品实现了哪些功能点,哪些还没有实现l 缺陷分析——按照缺陷的属性分类进行分析l 测试需求覆盖率——原先列举的测试需求的测试覆盖率,可能一部分测试需求因为资源和优先级的因素没有进行测试,那么在这里要进行说明l 测试评估——从总体对项目质量进行评估测试组建议——从测试组的角度为项目组提出工作建议...