测试技术与集成、性能验证
頻出约 33 分钟5 个术语过去问 16 题
本单元目标
- 能够说明黑盒测试依据什么来设计测试用例。
- 能够排出测试阶段的先后顺序,并把集成测试所确认的范围与其他阶段区分开。
- 能够说明性能测试与负载测试的区别,并讲出修正之后要做回归测试的理由。
术语总表(5 个)
术语
黑盒测试(ブラックボックステスト)是一种测试技法:不看程序的内部结构,只对照外部规格(外部仕様),确认给出的输入能否得到正确的输出。
测试人员只凭规格书来设计用例,所以即使不是写代码的本人也能完成设计。代表性的设计方法等价类划分(同値分割),是把输入按“结果相同的范围”分成若干组,再从每组中选出代表值。重点测试范围边界及其相邻值的边界值分析(境界値分析),同样只靠规格就能设计。
类比就像不拆开计算器,只按下按键,看屏幕上显示的答案对不对。
记法黑盒=里面涂黑、看不见的箱子,看得到的只有入口和出口。
考点
- 常考黑盒测试(ブラックボックステスト)不涉及内部结构,而是对照规格确认输入与输出的对应关系。
- 常考等价类划分(同値分割)是设计用例的方法之一:把包括正常值与异常值在内的输入分成结果相同的组,并从每组至少选一个值。
- 易混以执行全部语句或全部分支为目标来设计用例,是查看内部结构的白盒测试(ホワイトボックステスト)的做法。白盒测试主要用于单元测试(単体テスト)。
该术语的过去问 3 题 ブラックボックステスト →
集成测试(統合テスト)是把已完成单元测试的程序或部件组合起来,确认彼此的接口(インタフェース,即数据传递和调用方式的约定)能否正确衔接的测试。
集成测试在日语中也叫结合测试(結合テスト):单独运行都正确的部件,一旦传递值的格式或顺序对不上,连接处就会出问题,所以要检查这些接缝。测试一般依次进行逐个部件的单元测试(単体テスト)、集成测试、由开发者对照需求确认整个系统的系统测试(システムテスト),以及由用户确认能否用于业务的运行测试(運用テスト)。与开发工序对应来看,集成测试是确认内部设计(内部設計,决定系统内部结构的工序)成果的阶段。
类比就像把检验合格的发动机和变速箱装到车身上,试一试踩下油门的力量能否正确传到车轮。
记法結合=先“结”起来再“合”上。要看的不是部件本身,而是部件之间的“结点”。
考点
- 常考集成测试(統合テスト)把已完成单元测试(単体テスト)的程序连接起来,确认数据能否按接口(インタフェース)约定传递,使程序协同工作。
- 常考与开发工序配对来看:单元测试对应编程(プログラミング),集成测试对应内部设计(内部設計),系统测试(システムテスト)对应外部设计(外部設計),运行测试(運用テスト)对应需求定义(要件定義)。
- 易混测量整个系统性能的是下一阶段的系统测试,集成测试的对象是部件之间的接缝。全面确认内部路径的则是前一阶段的单元测试。
该术语的过去问 3 题 統合テスト →
性能测试(性能テスト)是用应答时间(応答時間)和吞吐量(スループット,单位时间内能处理的件数)等数值,测量系统能否以要求的速度和数量完成处理的测试。
处理得多快、多少,属于非功能性需求(非機能要件,即功能以外所要求的性能、可靠性等条件)之一,性能测试就是确认能否达到其目标值。测得的数值会受设备配置左右,因此要在硬件和软件都接近正式环境的环境中测量。它要在部件连接后的整个系统上才有意义,所以主要由开发者在系统测试(システムテスト)阶段进行。
类比就像在换了新收银机的店里,用秒表记下给一位顾客结账要几秒、一小时能接待多少人。
考点
- 常考应答时间(応答時間)、吞吐量(スループット)等性能需求能否达到目标值,主要由开发者在系统测试(システムテスト)中确认。
- 易混查看能否得到符合规格的结果属于功能(功能性)测试,与测量速度和处理量的性能测试(性能テスト)不是一回事。
该术语的过去问 3 题 性能テスト →
负载测试(負荷テスト)是把同时访问数或数据量加到预想的上限、甚至超过上限,确认系统能否持续运行以及处理极限在哪里的测试。
它是性能测试(性能テスト)的一种,逐步增加访问数和数据量,观察应答如何变慢、处理从哪一点开始跟不上。有时还会确认:超过极限时能否在不破坏数据的前提下返回错误,负载下降后能否恢复原来的速度。
类比就像桥梁的承重试验:一点点加放重物,看压到多重时桥面的弯曲突然变大。
考点
- 易混负载测试(負荷テスト)不只是测量在既定条件下能否达到目标值,而是把量加到上限之外,探寻极限以及极限附近的表现,这一点与一般的性能测试(性能テスト)目的不同。
回归测试(回帰テスト)是在修正或变更程序后,重新执行已经确认过的测试,检查原本正常的功能有没有因变更的影响而出问题的测试。
在日语中它也写作外来语形式的回归测试(リグレッションテスト),目的是找出因修正而在现有功能中出现的缺陷(质量退化,デグレード)。改了一处,也可能影响共用该部件的其他处理,因此不只是修正处,周边的功能也要重新运行一遍。由于每次变更都要重复同样的测试,它很适合做测试自动化。
类比就像修好厨房的水管后,把家里的水龙头挨个拧一遍,确认浴室和洗脸池照样出水。
记法regression 在英语里是“倒退”的意思:要看的是,自以为修好了,质量却有没有往回退。
考点
- 常考修正已测试完的程序后,要把确认修正处的用例加入以前通过的整套用例,再重新运行一遍。
- 常考只重新运行发现缺陷的那个用例是不够的,还要确认修正有没有影响到其他功能。
- 常考确认对运行中系统所做变更的测试(回归测试(回帰テスト)也是其中之一),要在配置与正式环境相同的另一套测试环境中进行,以免影响正式环境。
该术语的过去问 2 题 回帰テスト →
要点
- 黑盒测试只凭规格设计用例,其中等价类划分是把输入分组后从各组选出代表值。
- 测试按单元、集成(结合)、系统、运行的顺序推进,集成测试确认的是程序之间的接缝。
- 性能测试是用数值测量应答时间和处理量能否达到目标值的非功能测试,主要在系统测试中进行。
- 负载测试是性能测试的一种,把量加到上限之外来探寻极限。
- 回归测试是重新确认修正或变更有没有破坏现有功能的测试。
查看这个领域的全部过去问 →