请问软件测试有哪些方法?
(1)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据
常用的软件测试方法和工具
开源测试管理工具:Bugfree、Bugzilla、TestLink、mantis 开源功能自动化测试工具:Watir、Selenium、MaxQ、WebInject 开源性能自动化测试工具:Jmeter、OpenSTA、DBMonster、TPTEST、Web Application Load Simulator [TestDirector]:企业级测试管理工具,也是业界第一个基于Web的测试管理系统。
[Quality Center]:基于Web的测试管理工具,可以组织和管理应用程序测试流程的所有阶段,包括指定测试需求、计划测试、执行测试和跟踪缺陷。
[QuickTest Professional]:用于创建功能和回归测试。
[LoadRunner]:预测系统行为和性能的负载测试工具。
[其他工具与自动化测试框架]:Rational Functional Tester、Borland Silk系列工具、WinRunner、Robot等。
国内免费软件测试工具有:AutoRunner和TestCenter。
软件测试方法有哪些?
软件测试方法一般分为两大类:动态测试方法和静态测试方法。
1、静态测试是指被测程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。
动态测试是指通过运行程序发现错误。
一般意义的测试多指动态测试。
2、动态测试分为黑盒法和白盒法两种。
(1)黑盒法,是指测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。
这个猪是健康的,正常的。
我们的测试不去理会猪的内部有什么花花肠子,怎么把食物变成肉的。
这就是黑盒测试法。
(2)白盒法,是指测试人员须了解程序内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。
软件测试方案怎么写
1、按是否查看程序内部结构分为:(1)黑盒测试(black-box testing):只关心输入和输出的结果 (2)白盒测试(white-box testing):去研究里面的源代码和程序结构2、按是否运行程序分为:(1)静态测试(static testing):是指不实际运行被测软件,而只是静态地检查程序代码、界面或文档可能存在的错误的过程。
静态测试包括:对于代码测试,主要是测试代码是否符合相应的标准和规范。
对于界面测试,主要测试软件的实际界面与需求中的说明是否相符。
对于文档测试,主要测试用户手册和需求说明是否真正符合用户的实际需求。
(5)动态测试(dynamic testing),是指实际运行被测程序,输入相应的测试数据,检查输出结果和预期结果是否相符的过程3、按阶段划分:(1)单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。
桩模块(stud)是指模拟被测模块所调用的模块,驱动模块(driver)是指模拟被测模块的上级模块,驱动模块用来接收测试数据,启动被测模块并输出结果。
(2)集成测试(integration testing),是单元测试的下一阶段,是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部门。
集成测试就是用来检查各个单元模块结合到一起能否协同配合,正常运行。
(3)系统测试(system testing),指的是将整个软件系统看做一个整体进行测试,包括对功能、性能,以及软件所运行的软硬件环境进行测试。
系统测试的主要依据是《系统需求规格说明书》文档。
(4)验收测试(acceptance testing),指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试,它也是软件正式交给用户使用的最后一道工序。
验收测试又分为a测试和beta测试,其中a测试指的是由用户、 测试人员、开发人员等共同参与的内部测试,而beta测试指的是内测后的公测,即完全交给最终用户测试。
4、黑盒测试分为功能测试和性能测试:1)功能测试(function testing),是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求。
包括逻辑功能测试(logic function testing) 界面测试(UI testing)UI=User Interface 易用性测试(usability testing):是指从软件使用的合理性和方便性等角度对软件系统进行检查,来发现软件中不方便用户使用的地方。
兼容性测试(compatibility testing):包括硬件兼容性测试和软件兼容性测试2)性能测试(performance testing) 软件的性能主要有时间性能和空间性能两种 时间性能:主要指软件的一个具体事务的响应时间(respond time)。
空间性能:主要指软件运行时所消耗的系统资源。
软件性能测试分为:一般性能测试:指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力的性能测试。
稳定性测试也叫可靠性测试(reliability testing):是指连续运行被测系统检查系统运行时的稳定程度。
负载测试(load testing):是指让被测系统在其能忍受的压力的极限范围之内连续运行,来测试系统的稳定性。
压力测试(stress testing):是指持续不断的给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。
(Validate the system or software can allowed the biggest stress.)5、其他测试类型:回归测试(regression testing)是指对软件的新的版本测试时,重复执行上一个版本测试时的用例。
(When a new build or release is deployed, repeat all the test cases which has executed in the last build or release.) 冒烟测试(smoke testing),是指在对一个新版本进行大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。
(validate the major function is deployed or not in software of system when a new build or release is implement.) 随机测试(random testing),是指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。
(means or all the test data is random, to validate the some edge bugs.)
软件测试方法?都有哪几种?
第一类测试方法是试图验证软件是“工作的”,所谓“工作的”就是指软件的功能是按照预先的设计执行的;而第二类测试方法则是设法证明软件是“不工作的”。
还有两大类:白盒法和黑盒法。
白盒法:你清楚程序的流程时,用不同的数据测试你程序的代码,验证程序的正确性,有:条件测试,路径测试,条件组合。
。
。
。
白盒法用在程序开发阶段的前期。
黑盒法:主要用于程序开发阶段的后期,即程序的流程测试正确后,测试程序的结果。
有什么因果法,边缘值法等。
具体你可以买本软件工程方面的书看看。
还有一下方法:功能测试:可接受性测试:用户界面测试:探索或开放'型的测试:性能测试:回归测试:强力测试:集成与兼容性测试:装配/安装/配置测试:国际化支持测试:本地化语言测试:这些都是测试的方法.
软件测试学习方法?
介绍一下软件测试:实际软件测试要求要高于软件开发,不仅要懂开发技术,还要懂得设计技术,测试技术,做到高级测试的话,水平要在高级开发之上;当前国内情况:软件测试基本是用开发水平比较低的人,有些甚至都不懂开发技术,主要是成本考虑(测试薪水比较低,所以要求自然比较低),大部分是一些刚毕业的,或在大专生之类的,测试时间也很短,基本就是一个形式(主要为接项目时有利),大部分测试由开发人员完成;目前主要一些外企有高水平的专业测试队伍,国内一些比较强的公司有部分专业测试队伍(水平也不是很高,但比较专业了);以后国内软件业必须逐步向国际水准看齐,所以软件测试是有潜力的;测试学习:1、基本编程能力(可通过学习一门语言,比如C语言,同时要学习数据结构、基本数据库技术);2、编程语言学习;(C、C++、C#、Java等,至少要2种)3、操作系统原理(有关内存分配、进程、线程原理等)、操作系统应用(Windows、Linux/Unix 都要了解);4、数据库技术、重要数据库应用(SQL Service、Orical、DB2、MySQL等)5、测试工具(自动化测试工具,好多,了解2种以上)6、测试管理(有了前面技术,这个管理类东西,几天就可以了解,但要完全懂,需要长期实践,就像项目经理一样,看起来简单,实际上需要许多经验,需要不断学习)
软件测试方法的文档测试
文档测试的英文是documentation testing,测试关注于文档的正确性。
文档测试有三大类分别是开发文件、用户文件、管理文件。
1. 开发文件:可行性研究报告、软件需求说明书、数据要求说明书、概要设计说明书、详细设计说明书、数据库设计说明书、模块开发卷宗。
2.用户文件:用户手册、操作手册。
3.管理文件:项目开发计划、测试计划、测试分析报告、开发进度月报、项目开发总结报告。
软件测试中的文档测试主要是对相关的设计报告和用户使用说明进行测试,对于设计报告主要是测试程序与设计报告中的设计思想是否一致;对于用户使用说明进行测试时,主要是测试用户使用说明书中对程序操作方法的描述是否正确,重点是用户使用说明中提到的操作例子要进行测试,保证采用的例子能够在程序中正确完成操作。
一般来说,文档是软件的重要组成部分,因此文档测试也是软件测试的主要内容。
在软件的整个生命周期中会出现很多文档,通常可以把文档粗略地分为三类:开发文档,管理文档和用户文档。
由于文档与代码不同,不能直接运行,对于文档的测试通常只能以文档审查的方式进行。
对于管理文档和审查通常归属于管理范畴,而不是软件测试范畴,因为对于管理文档审查的目的不是为了发现和消除用户所看到的软件中的缺陷,而是为了更好地管理软件开发的过程。
对于开发文档,由于这些文档本身体现了所在开发阶段的软件实际形态,对于这些文档的测试实际上是早期软件测试的主要活动。
用户文档是那些随程序一起交付给用户的文档,它们实际上是交付给用户的软件的重要组成部分。
对于这些文档的测试是对最终软件产品测试的一部分。
软件测试的主要内容有哪些?
软件测试的主要工作内容如下。
(1) 验证(verification),即保证软件正确实现某些特定功能的一系列活动。
(2) 确认(validation),即证实在一个给定的外部环境中软件逻辑正确性的一系列活动和过程。
(3) 具体内容,即包括软件开发期间各个阶段所产生的文档,如源程序、需求规格说明、概要设计文档、详细设计文档等。
请教零基础学习软件测试的方法与步骤,求高手指点,感激不尽!!
展开全部 也是在网上的一个回答!郁闷胡说八道的都有…软件测试具体分两种,黑盒测试和白盒测试:在刚踏入软件测试这个职位的时候,无论你的学识,都会从黑盒测试做起,黑盒测试,属于功能测试,这个阶段没什么好谈的,只是每天的编写测试文档与执行测试;如果在你的测试经验足够多的话,可以申请成为白盒测试,白盒测试要求是有一定的开发经验,其实没有这么严格,只是要求你要能看得懂代码,在你找到错误的时候,要能找到这个错误的代码定位,要具体到某一个文件的某一方法或者某一类出错。
为什么要说这两点,因为我要纠正你们的观念:软件测试工程师,同样可以学习开发工程师的经验。
我发现有很多人都是和我讲,说测试没前景啊,测试不如开发啊,其实你们看的是表面只是前期,我面试过很多应聘测试的,都是对自己的未来走向很担心。
其实不然,只要你懂得学习,测试同样会有开发的经验,我身边有很多的例子,不胜枚举。
其实真实的来讲,测试分三个层次,初级是黑盒,中级是白盒,高级测试员,是可以代替需求员和开发员的。
测试的前景,这里我也不必多说,如果你真的有疑问的话,可以追问,可以给你解答。
其实我很推荐的是开发人员转去测试,然后回头做开发,为什么这么做?因为测试是尽可能的找到软件存在的缺陷并且尽早的发现并抛出来,同时测试员也是这个软件的安全负责人。
当开发人员有了测试工程师的经验之后,会更加的能抓到软件容易出问题的所在,开发的时候会更加注重代码的规范啊,代码的合理性等等,从而是软件趋向精品化。
至于你说测试、开发、系统架构师等等互相转业的事,我可以肯定的告诉你,没有弯路!只要你的本领足够,就向你的领导提出申请,如果你的能力足以承担起这份岗位的时候,你自然可以转型,领导很愿意看到自己的员工“多才多艺”的,懂吗?但是我要告诉你一点,就是,我说的这几项,都只是技术类的转型,但是如果你说要技术岗位转和非技术岗位的转型,这个就很难,劝你不要想这条路,举个例子,你是测试,后来去做了销售,可是回头再想做回测试,难了。
就说这么多,如果你看到了就更好,有疑问尽管提。
还有,我不希望大家对“软件测试工程师”这个行业有什么特别的看法,我可以很肯定的告诉大家,软件测试这个行业,在近几年将会非常的热门,现在北京对这个行业稀缺度很高,后期的待遇甚至要高于开发工程师!而且还有一点,开发工程师一定会隶属某一个项目组来进行项目,而软件测试则直接隶属于公司,由公司统一调配到项目组进行配合,这就从根本上区分了开发与测试的待遇问题!当然,如果你只是初级测试,待遇肯定不行,但是如果你达到了中级测试,也就是白盒,那么你的薪资待遇讲和开发持平。
到后面,自己想吧。
我只能说,公司更加的注重软件出来的精品程度与质量,而这些完全取决于测试工程师。
头很痛的亲