软件测试的分类及简介

  • 按测试技术,可分为黑盒测试、白盒测试、灰盒测试;
  • 按测试方法,可分为:静态测试、动态测试;
  • 按测试执行方式,可分为:手工测试、自动化测试;
  • 按测试阶段,可分为:单元测试、集成测试、系统测试、验收测试;
  • 按测试实施组织,可分为:开发方测试、用户方测试、第三方测试;
  • 按软件质量特征分类:
    功能测试、安全测试、性能测试、可靠性测试、压力测试、安装测试、用户界面测试、兼容性测试
  • 其他测试方法:回归测试、冒烟测试、monkey测试、A/B测试

一、黑盒测试

1、定义

在程序接口进行测试,它只是检查程序功能是否按照规格说明书的规定正常使用。也被称为功能测试或者数据驱动测试。它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

2、黑盒测试优缺点

优点:1、容易实施,不需要关注程序内部的实现;2、更贴近用户的使用角度;
缺点:1、测试覆盖率较低,一般只能覆盖到代码量的40%;2、针对黑盒的自动化测试,复用率较低,维护成本较高。

3、黑盒测试主要测试内容

  1. 是否有不正确或遗漏的功能;
  2. 在接口上,输入是否能正确的接受?能否输出正确的结果;
  3. 是否有数据结构错误或外部信息访问错误?
  4. 性能上是否能够满足要求?

4、黑盒测试的主要设计方法

  1. 流程分析法
  2. 等价类划分法
  3. 边界值分析法
  4. 错误推测法
  5. 因果图法
  6. 正交试验分析法
  7. 状态迁移图法
  8. 流程分析法

二、白盒测试

1、定义

要完全了解程序结构和处理过程,它按照程序内部逻辑测试程序,检验程序中每条通路是否按预定要求正确工作。也被称为结构测试或逻辑驱动测试。

2、主要逻辑单位

语句、条件、条件组合、分支、路径

3、白盒测试的优缺点

优点:
1、迫使测试人员去仔细思考软件的实现,理解原理
2、可以检测代码中的每条分支和路径
3、揭示隐藏在代码中问题
4、对代码的测试比较彻底
缺点:
1、代价有些高,需要测试人员有编程能力
2、无法检测代码中遗漏的路径和数据敏感性错误
3、不能直接验证需求的正确性

三、灰盒测试

介于黑盒测试与白盒测试之间的测试,既要像黑盒测试那样关注输出对于输入的正确性,同时也关注内容表现,但这种关注不像白盒测试那样详细、完整,只是通过一些表征性的现象、事件、标志判断内部的运行状态。

四、静态测试

1、定义

静态测试是指无需执行被测程序,而是通过评审软件文档或代码,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率

2、其形式有程序员互查、小组组织查找、召开正式评审会审查

五、动态测试

动态测试是指通过运行被测程序,检查运行结果和预期结果的差异,并分析运行效率,正确性和健壮性等。也就是通过实际运行情况来评价程序的性能。

六、手工测试

由专门的测试人员从用户视角来验证软件是否满足设计要求的行为。
更适用针对深度的测试和强调主观判断的测试。比如:众包测试和探索式测试

七、自动化测试

1、定义

适用单独的测试工具软件控制测试的自动化执行以及对预期和结果进行自动检查。

2、手工测试和自动化测试的区别

手工测试 自动化测试
易发现缺陷 高效率、速度快
容易实施 高复用性
创造性、灵活性 覆盖率容易度量
覆盖量化难 准确、可靠
重复测试效率低 不知疲劳
不一致性、可靠性低 机械、发现缺陷率低
人力资源依赖 一次性投入较大

八、功能测试

根据产品特性,操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。针对的问题主要是功能错误/遗漏,界面问题,性能错误,数据以及访问错误,初始化及终止错误。这里性能错误指的是软件本身的性能问题。

功能自动化测试主要的工具:QTP(基于关键字驱动),silkTest,Rational robot,selenium(开源针对web应用),Watir,sikuli(基于截图)

九、性能测试

验证软件系统的性能能够满足需求所需求的性能指标。性能测试一般分为负载测试,压力测试,稳定性测试。性能指标包括并发用户数(VU),每秒事物数(TPS),系统相应时间,设备性能。

性能测试工具:loadrunner,silkperformer,Jmeter,WebLoad等

web应用性能测试重点:静态性能评估,开发web应用时,基于一系列web应有页面性能优化的最佳实践对Web应用的页面进行静态分析,并给出评估结果的性能分析方法。业内有YSlow和PageSpeed两种主流的评判标准/工具,都是浏览器插件。

应用性能管理(APM)主要是提供给系统的实时监控以实现性能管理,故障管理的解决方案。

十、安全测试

对软件产品进行测试以保证软件符合产品安全需求和质量标准。渗透测试通过模拟对软件系统的恶意攻击行为来评估系统安全性的一种测试,是取得用户一种授权的一种攻击测试。

开放的web应用安全项目OWASP:http://www.owasp.org

安全测试工具:Appscan针对web应用的漏洞扫描工具,Webinspect,Nessus针对服务器主机类的漏洞扫描工具,Nmap端口嗅探的工具,MetaSploit攻击框架,Fortify针对白盒测试

十一、兼容性测试

软件本身的兼容性,对历史版本的功能和数据进行兼容;不同平台的兼容,可能在多个平台上运行,需要考虑多个平台的验证;软件对运行设备的兼容性,不同的设备不同的软件表现;软件的互操作性,同一个厂商的不同软件在同一台设备可能会有相互操作。对于web应用,不同的浏览器之间的兼容,IE,FireFox,Chrome,Opera

兼容性的测试工具:BrowserShots,BrowserSandbox

十二、回归测试

在软件功能修改后,对软件进行重新测试以确认修改没有引入新的错误或者导致其他部分产生错误,最适合实施自动化测试。可以针对模块进行回归测试。

十三、冒险测试

用于确认代码中的更改会按照预期运行,且不会破坏整个版本的稳定性。针对全流程的一个关键业务的流程的验证。

十四、monkey测试

用一些随机,稀奇古怪的方式来操作软件,以测试系统的健壮性和稳定性。andriod的sdk就有monkey测试的接口。

十五、A/B测试

用于互联网行业,通过页面提供两个版本给用户使用并记录相关的用户行为数据,来确定更优化设计的一种测试方案。实施要点:多个方案并行实施,并用户数量达到一定的数量级;每次改动仅改动一个变量;按照某种规则进行优胜劣汰。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容

  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 9,188评论 2 126
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 21,938评论 7 278
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    宇文臭臭阅读 6,713评论 5 100
  • 1****、问:你在测试中发现了一个bug****,但是开发经理认为这不是一个bug****,你应该怎样解决? 首...
    蛋炒饭_By阅读 5,289评论 1 94
  • 在我们的生活当中,我们难免会出现一些头疼脑热性的疾病,朋友们如果对于这些小的疾病不加以重视的话,往往他们会惹来的祸...
    江湖人称王大大阅读 149评论 0 0