51Testing软件测试论坛

标题: 软件测试的方法 [打印本页]

作者: lsekfe    时间: 2014-3-11 16:53
标题: 软件测试的方法
目前我看到有些测试新手会问软件测试有哪几种方法,那么我就借花送佛,给大家一些分享~~如果大家觉得有缺的地方。可以回复补充!


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.)


作者: 赵佳乐SMILE    时间: 2014-3-12 10:07
赞~~~
作者: a136332462    时间: 2014-3-12 10:58
谢谢 学习了
作者: runzey    时间: 2014-3-13 08:51
赞一个
作者: Charles_H    时间: 2014-3-13 09:38
赞~~~~~
作者: lnj1980    时间: 2014-3-13 16:48
挺好,学习了。
作者: androidtesting    时间: 2014-3-13 22:38
赞一个,手机测试具体都有哪些呀
作者: yimiaoyikan    时间: 2014-3-17 12:56
学习了,面试的时候问道过这个问题
作者: lusia_L    时间: 2014-3-17 15:02
新手进来学习一下
作者: Miss_love    时间: 2014-3-18 08:39
不错不错,支持乱码。
作者: Tifk    时间: 2014-3-19 10:10
新手进来学习学习。。。楼主  可不可以还请教下,这些测试对应用哪些工具好点(最好是免费测试工具;适合于中小型项目)。。。。我自己也在网上搜了很多,只不过都在摸搜中,不太熟悉,希望前辈们给给意见。万分感谢
作者: pf_qc    时间: 2014-5-5 17:47
适合新手,老手也可温故知新
作者: 楠族开心果    时间: 2014-5-6 11:00
支持乱码
作者: daringmen    时间: 2014-5-6 17:03
黑盒测试技术
1.等价类技术  equivalence class testing
等价类是指某个输入域的子集合
有效等价类 符合需求规格说明书,合理地输入数据集合。
无效等价类 不符合需求规格说明书,合理地输入数据集合。
2.边界值技术 boundary value testing
错误隐藏在角落 (errors hide in the corner)
构造测试用例的时候要重点考虑边界
3.因果图法 cause-effect graphs
输入+输出 所有输入条件的排列组合
4.流程图法 workflow method
业务流程图 能够使测试人员对被测系统有一个总体的理解。防止测试的时候有遗漏的页面或者模块。
□ 正方形or长方形 是页面  →箭头 是跳转   ◇ 菱形 是条件判断
作者: pf_qc    时间: 2014-6-4 09:45
LZ赞一个!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2