《软件测试技术经典教程第二版》阅读笔记2

第一部分 软件测试基础

第 2 章  软件测试分类

本章要点:

        ● 了解黑盒测试和白盒测试的概念,静态测试、动态测试、单元测试的概念和应用,驱动模块、桩模块的含义,集成测试、系统测试、验收测试的概念。

        ● 掌握功能测试、性能测试的概念和应用,界面测试、易用性测试、安装测试、兼容性测试、回归测试、冒烟测试、随机测试的含义。


1. 黑盒测试(Black-Box Testing)

       指的是把被测的软件看作一个黑盒子,我们不关心盒子里面的结构是什么样的,只关心软件的输入数据输出结果

2. 白盒测试(White-Box Testing)

       指的是把盒子盖打开,去研究里面的源代码程序结构

3. 静态测试(Static Testing)

       指的是不实际运行被测软件,只是静态地检查程序源代码、界面或文档中可能存在的错误的过程。静态测试包括三个方面:

       ① 对于代码测试,主要测试代码是否符合相应的标准和规范。按照相应语言的代码规范模板来逐行检查。

       ② 对于界面测试,主要测试软件的实际界面与需求中的说明是否相符。

       ③ 对于文档测试,主要测试用户手册和需求说明是否真正符合用户的实际需求。

注1:对于①,很多白盒测试工具中自动集成了各种语言的编码规范。

注2:在代码测试中,程序没有注释是必须修改的问题。注释是程序中很重要的组成部分,可以说 程序 = 代码 + 注释。一般注释语句最好占到代码总行数的1/5~1/4。注释包括程序的基本信息如作者、版本号、创建日期等,以及主要功能模块的含义。

4. 动态测试(Dynamic Testing)

       指的是实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。

5. 单元测试(Unit Testing)

       是指对软件中的最小可测试单元进行检查和验证。单元,就是人为规定的最小的被测功能模块。

       单元测试通常在程序员编码之后,代码已经通过编译后,进行单元测试。单元测试一般由白盒测试工程师或开发人员来测试(如果由开发人员来测试,最好做到交叉测试)。

       单元测试的通过标准:程序通过所有单元测试的用例;语句的覆盖率达到100%;分支的覆盖率达到85%。

       单元测试的一般步骤:

       ① 编译运行程序(查看能否正确运行)

       ② 静态测试(检查代码是否符合规范)

       ③ 动态测试(深入检查代码的正确性、容错性和边界值)

       单元测试的依据:一个是源程序本身,包括代码和注释;另一个是项目的《详细设计》文档。

注:和单元测试有关的概念——桩模块和驱动模块

       桩模块(Stub)是指模拟被测模块所调用的模块。驱动模块(Driver)是指模拟被测模块的上级模块。驱动模块用来接收测试数据,启动被测模块并输出结果。

6. 集成测试(Integration Testing)

       是指将通过测试的单元模块组装成系统或子系统,再进行测试,重点测试不同模块的接口部分(如函数之间的参数传递是否正确等)。

       集成测试的依据是单元测试的模块以及《概要设计》文档。

7. 系统测试(System Testing)

       是指将整个软件系统看作一个整体进行测试,包括对功能性能,以及软件所运行的软硬件环境进行测试。

       系统测试主要是由黑盒测试工程师在整个系统集成完毕后进行测试,前期主要测试系统的功能是否满足需求,后期主要测试系统运行的性能是否满足需求,以及系统在不同软硬件环境中的兼容性。

       系统测试的主要依据是《系统规格说明书》文档。

8. 验收测试(Acceptance Testing)

       指的是在系统测试的后期,以用户测试为主,或有测试人员等质量保障人员共同参与的测试。

       验收测试是软件正式交给用户使用的最后一道工序,涉及用户能否最终验收签字并付款。

       验收测试分为α测试β测试。其中α测试指的是由用户、测试人员、开发人员等共同参与的内部测试,而β测试指的是内测后的公测,即完全交给最终用户测试,其目的就是交给用户免费试玩,再根据用户的反馈去修改软件。

图1 按阶段划分的四种测试的比较

9. 功能测试(Function Testing)

       是黑盒测试的一方面,它检查实际软件的功能是否符合用户的需求。功能测试是最主要的测试,通常可以细分为:逻辑功能测试界面测试易用性测试安装测试兼容性测试等。

10. 性能测试(Performance Testing)

       是软件测试的高端领域,通常所说的高级软件测试工程师一般就指性能测试工程师或白盒测试工程师。性能测试一般要用到自动化测试工具。

       软件的性能主要有时间性能空间性能两种。时间性能,主要指软件的一个具体事务的响应时间Respond Time,需要在具体的测试环境中分析。响应时间的长短跟用户的主观感受有关系。空间性能,主要指软件运行时所消耗的系统资源,如该软件在某配置下运行时的CPU利用率内存占有率

       软件性能测试的分类:

       ① 一般性能测试,指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力。

       ② 稳定性测试,也叫可靠性测试(Reliability Testing),是指连续运行被测系统,检查系统运行时的稳定程度。通常用MTBF(Mean Time Between Failure)来衡量系统的稳定性,MTBF越大,系统的稳定性越强。通常采用24x7的方式让系统不间断运行。

       ③ 负载测试(Load Testing),通常指让被测系统在其能忍受的压力的极限范围之内连续运行。负载测试需要给被测系统施加其刚好能承受的压力。负载测试是为了测试系统在临界状态下运行是否稳定。

       ④ 压力测试(Stress Testing),通常指持续不断地给被测系统增加压力,直到将被测系统压垮为止,用来测试系统所能承受的最大压力。

11. 回归测试(Regression Testing)

       是指在对软件的新版本进行测试时,重复执行上一个版本测试时的用例。通常是测试人员测试当前版本后,开发人员进行修改,对修改后的版本重新进行测试。不能只测上个版本出错的地方,因为软件的新版本中可能引入新的Bug,需要我们系统全面地重新测试。

12. 冒烟测试(Smoke Testing)

       是指在对一个新版本进行系统大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性。

       每当我们拿到一个新版本时,都首先进行冒烟测试,如果通过,则进行回归测试。

13. 随机测试(Random Testing)

       是指测试中所有的输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性错误。

       在实际的项目中,一般都是先做大规模的正规测试,如果时间允许,就辅助一些随机测试。

14. 不同测试分类之间的关系

图2 不同测试分类的关系

15. 黑盒测试、白盒测试、静态测试、动态测试的关系

       只是同一个测试的不同分类角度而已,而且它们之间还有包含交叉的关系,总结以下4句话:

       ● 既是动态测试,也是黑盒测试(运行程序,只看输入和输出)。

       ● 既是静态测试,也是黑盒测试(不运行程序,只是查看界面)。

       ● 既是动态测试,也是白盒测试(运行程序,并分析代码结构)。

       ● 既是静态测试,也是白盒测试(不运行程序,只是静态查看代码)。

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

推荐阅读更多精彩内容