中国海洋大学

发布时间:2026-03-02 23:06

珠海长隆海洋王国,大型海洋表演不容错过 #生活乐趣# #旅行建议# #亲子游玩好去处#

单选30

简答20 3-5题

设计50 4-5题(类似平日作业的题目)

注意:重点是第三章黑盒测试、第四章白盒测试。(综合题的出题重点)所有章节中上课讲过的例题和课堂练习及课后作业中的题目必须会做。复习课件中所谓需要了解的内容只需要了解,不会特意为这些知识点出题。(不保证出其他题目的时候不涉及这些内容)第一二和七八九章主要注意各种概念性问题。(选择题和简答题的出题重点)

一 绪论

1 多选择题  验证和有效性确认比较重要 软件测试原则(选择)

背诵:软件缺陷含义,过程模型(注意各模型的特点,局限性,多考v w模型  x模型是探索性)

软件测试可以被定义为验证(Verification)和有效性确认(Validation)两项活动构成的整体。(V&V)验证:检验软件是否已正确实现了说明书所定义的系统功能和特性有效性确认:确认软件是否满足用户真正的需求。 软件测试的原则:测试用例中要精确定义程序预期输出避免测试自己编写的程序(包括个人和组织)应彻底检查测试执行结果,避免遗漏有效和无效输入都要测试“做了应做的” 和“没做不应做的”都要检查避免测试用例用后即弃计划测试工作时不应默许假定不会发现错误发现错误越多,残存错误越多。大部分错误存在于少数模块,应重点测试软件测试富有创造性,极具智力挑战。

软件缺陷含义

软件未实现产品说明书要求的功能软件出现了产品说明书指明不应该出现的错误。软件实现了产品说明书未提到的功能软件未实现产品说明书虽未明确提及但应该实现的目标。软件难以理解、不易使用、运行缓慢或者最终用户认为不好 V模型:

优点:定义了开发过程、测试行为;

      标明存在不同类型/级别的测试

      标明了测试和开发的对应关系

缺点:测试仅是设计及编码之后的一个阶段,没有体现测试贯穿软件开发的始终。

W模型特点:

优点:增加了各阶段V&V,(验证和有效性确认)

      体现了尽早和不断测试的原则。

缺点:软件开发和测试是串行活动,无法快速有效支持产品迭代。

      顺序模型体现不了测试流程的完整性

H模型特点:

优点:测试是独立的流程

      贯穿产品的整个生命周期

      尽早准备、尽早执行

      测试流程可与其他流程并发进行,分层次进行的

X模型

优点:能引导项目的整个过程

      探索性测试,可帮助测试人员发现更多(计划外)的软件错误(有可能浪费人力/物力/财力)

二 软件测试的基本概念、过程和分类

2 软件测试阶段分类   静态与动态测试特征,区别,各包括什么  代码检查这些过程要理解(但不会简答)

黑白盒:知不知道程序怎么样 怎么样写测试用例 依据 用于?(表格那里老师说是选择)

其他测试要理解

单元测试------对应代码编写

集成测试------对应概要设计

系统测试------对应需求分析和系统分析

验收测试------对应用户需求

静态测试的主要特征是:

不利用计算机运行被测试的程序,而是采用其他手段达到检测的目的,是对被测程序进行特性分析的一些方法的总称。包括但不仅限于人工测试。(代码检查 代码走查 单人桌面检查;静态分析 界面测试 文档测试……)

动态测试的主要特征是:

计算机必须真正运行被测试的程序,通过输入测试用例,对其运行情况即输入与输出的对应关系进行分析。(手工测试 自动测试)

黑盒测试:不关注软件内部的代码实现、逻辑结构或算法细节,仅通过验证软件的“输入”与“输出”是否符合需求规格。主要根据规格说明书设计测试用例

白盒测试:测试规划基于产品的内部结构进行测试,检查内部操作是否按规定执行,软件各个部分功能是否得到充分使用。根据程序内部结构设计测试用例。

对比维度

黑盒测试

白盒测试

测试视角

外部视角(用户视角)

内部逻辑视角(开发者视角)

测试依据

需求规格说明

代码逻辑、代码结构

核心目标

验证功能是否符合需求,发现功能缺陷

验证代码逻辑、代码结构正确性,发现内部缺陷

适用阶段

需求确定后(贯穿全周期,侧重系统测试、验收测试)

编码后(单元测试、集成测试为主)

方法举例

等价类划分;边界值分析;因果图……

语句覆盖;判定覆盖;条件覆盖;路径覆盖;循环覆盖……

自动测试效率高,便于多次回归测试,可以执行并发测试等手工测试不便执行的测试,能更好利用资源,具有一致性和可重复性。

三 黑盒测试

考试重点(有大设计题) 默认弱健壮(怎么划分 写测试用例要会 只有一个纬度会比较好划分?)

边界值...判定表...

因果图要懂(不一定所有都要约束条件)要把原因结果列出来c1c2c3,连成因果图,标明约束,转化判定表,合并,去掉不可能,写测试用例

因子水平表最多要求到图表

大题:考两个

等价类划分测试方法:

基本思想:把程序的输入域划分成若干部分,然后从每个部分选取少数代表性数据当做测试用例。

弱健壮等价类划分

边界值分析:(五点法 不考虑无效)

例1:有两个输入变量x1(a≤x1≤b)和x2(c≤x2≤d)的程序F的边界值分析测试用例如下:(省略了预期输出){ <x1nom,x2min>, <x1nom,x2min+>, <x1nom,x2nom>, <x1nom,x2max>, <x1nom,x2max->, <x1min,x2nom>, <x1min+,x2nom>, <x1max,x2nom>, <x1max-,x2nom> }

判定表

(不可能的不用写,否则每一列都要有个测试用例)

因果图

正交实验设计法

四 白盒测试

考试重点(有大设计题)

控制流图(注意判定节点不包含复合条件)(可以在行标号 或者话 流程图 标号)

大题:(考两个)逻辑覆盖 (路径覆盖反例?)

lcsaj准则

基本路径测试法(每次都考)

循环测试(前三个是怎么测的 有可能简答)嵌套循环 z路径覆盖 ns图

独立路径:是指程序中至少引入了一个新的处理语句集合或一个新条件的程序通路。

逻辑覆盖(程序流程图)

语句覆盖(不用走空路)、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖(要真正出现过,见例题)和路径覆盖(要走空路)

!!!逻辑覆盖例题:(课上例子)!!!

/*LCSAJ覆盖准则:(分层准则,注意定义)

LCSAJ含义:在程序中,一个LCSAJ是一组顺序执行的代码,以控制跳转为其结束点。

LCSAJ的起点和终点定义      (起点是根据程序本身决定的。它的起点可以是程序第一行或转移语句的入口点,或是控制流可跳达的点。        以控制跳转为其结束点)

LCSAJ路径定义(有几个LCSAJ首尾相接,且第一个LCSAJ起点为程序起点,最后一个LCSAJ终点为程序终点)

会找程序段中的LCSAJ和LCSAJ路径*/

基本路径测试方法(控制流图)

在不能做到所有路径覆盖的前提下,如果某一程序的每一个独立路径都被测试过,那么可以认为程序达到了语句覆盖。这种测试方法就是基本路径测试方法。

Ns图(程序流程图)

!!!控制流图例题和解答!!!

五 单元测试

单元测试:是针对程序模块进行正确性检验的测试工作。(单元的内部结构、单元的功能和可观测的行为)

重点:驱动模块 桩模块 看看图 模块的五个基本特性(模块接口 局部数据结构 边界条件 独立路径 出错处理)

自底向上 自顶向下 孤立(和集成不同是因为测试对象不同?简单了解)

/*注意驱动模块和桩模块的定义及功能?*/

驱动模块:相当于被测基本单元的主程序,它接收测试数据,并把数据传送给被测单元,调用被测模块,最后输出实测结果。桩模块(存根模块):用来代替被测基本单元调用的其他基本单元。

驱动模块和桩模块是测试时使用的软件,而不是软件产品的组成部分

单元测试主要对模块的五个基本特性进行评价,(还有功能测试、性能测试、内存使用测试)

六 集成测试

集成测试:验证组装后功能及模块间接口是否正确的测试工作。验证程序和概要设计说明的一致性(测试模块接口)

两类集成测试策略:

基于功能分解的集成:非渐增式集成、渐增式集成

基于调用图的集成:成对集成、相邻集成

重点:渐增式集成(示意图等等 与课上画的图类似)

调用图

集成测试在单元测试的基础上,将所有模块按照概要设计要求集成为系统或子系统,验证组装后功能及模块间接口是否正确的测试工作。集成测试验证软件与概要设计说明的一致性。测试对象是模块间的接口,目的是找出在模块接口上的问题,测试依据是概要设计说明。 两类集成测试策略:基于功能分解的集成:非渐增式集成、渐增式集成、基干集成基于调用图的集成:成对集成(对应调用图的每一个边)、相邻集成(内部结点及其邻居)

渐增式集成:自顶向下集成(dfs, bfs )、自底向上集成、三明治集成

 

单元调用图是一种有向图,结点代表程序单元,边代表程序调用,即如果单元A调用单元B,则在单元调用图中会有一条边从A指向B。

成对集成

相邻集成

注意上课讲过的关于集成方式的例题、练习???

七 系统测试

系统测试(选择 简答)

了解(这回不考他们区别)

负载测试图?

理解性掌握一堆测试

向前向后兼容怎么定义的

α β测试要知道

将已经集成的软件系统,作为整个 计算机系统 的一个元素,与计算机硬件、外部设备、辅助软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。

目的:通过与系统的需求定义作比较,发现软件与系统定义不符合或者与之矛盾的地方

依据:开发人员提供的“需求规格说明书”

负载测试图

向后兼容是指可以使用软件以前版本的数据。(Mc1.17可以使用1.15的地图)

向前兼容是指可以使用软件未来版本的数据。

a测试:是一个用户在开发环境下进行的测试,也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。

b测试:就是把产品有计划的分发到目标市场,从市场收集反馈信息,把关于反馈信息的评价制成易处理的数据表,再把这些数据分发给所涉及的各个部门。

八 测试组织和管理

测试成熟度模型(!经常考! 要把五个等级背下来:初始级,定义级,集成级,管理和度量级,优化级)(明确各级别的特征,给出特征能够说出具有该特征的测试属于哪个级别)

环境搭建(系统测试 主辅)

测试用例设计(不会简答 但要知道)

理解测试实施

搭建测试环境主要是用于被测应用系统的系统测试。软件测试环境可分为主测试环境辅测试环境。主测试环境是测试软件功能、安全可靠性、性能、易用性等大多数指标的主要环境。辅测试环境通常为其他测试需求或特殊目的搭建(兼容性测试,真实环境测试,横向对比测试) 配置主测试环境可遵循下列原则:尽可能模拟真实环境符合软件运行的最低要求,保证能支撑软件正常运行选用比较普及的操作系统和软件平台。营造相对简单、独立的测试环境。(避免软件间的影响)无毒环境。测试用例是为某个特殊目标而编制的一组测试输入、执行条件及预期结果,以便测试某个程序路径或者核实软件是否满足某个特定需求。

缺陷管理(缺陷状态与管理流程图)

TMM的测试成熟度模型分级

初始级:描述:测试过程无序、混乱,几乎没有妥善定义特征:测试与调试常混为一谈;开发过程缺乏测试资源、工具及训练有素的测试人员定义级:描述:测试目标是验证软件符合需求特征:测试被定义为软件生命周期中的一个阶段;软件的测试与调试明确被区分开;但测试计划往往在编码后才得以制定,有悖于软件工程的要求。集成级:描述:测试不再是编码后的一个阶段,而是贯穿于整个软件生命周期中;测试建立在满足用户或者客户需求之上。特征:建立了独立的测试部门,有自己的技术培训并且有测试工具,根据用户需求设计测试用例;没有建立起有效的评审制度,没有建立起质量控制和质量度量标准。管理和度量级描述:测试是一个度量和质量控制过程;在软件生命周期中评审作为测试和软件质量控制的一部分。特征:对软件产品进行可靠性、可用性和可维护性等方面的测试;使用测试数据库收集和记录测试用例,使用缺陷管理系统跟踪并划分缺陷级别;没有建立起缺陷预防机制,缺乏自动地对测试中产生的数据进行收集和分析的手段。优化级:描述:具有缺陷预防和质量控制能力;已经建立起测试规范和流程,并不断地进行测试改进。特征:已经能够熟练地运用缺陷预防和质量控制措施;使用既定的流程来选择和评估测试工具;测试自动化程度比较高;自动收集缺陷信息,并有常规的缺陷分析机制。

九 软件错误与程序排错

比较重要的是那几个公式

理解原理(

归纳:从特殊到一般 从具体现象提炼得缺陷假设

演绎:从一般到特殊 从通用知识提缺陷假设

撒播模型(错误植入法,分别测试法)和回归模型

分别测试法:使用两个测试员,彼此独立测试同一个程序的两个副本,把其中一个测试员发现的错误作为有标记的错误。

假设T= 0时错误总数为B0。

T= T1时测试员甲发现的错误数为B1。

T= T1时测试员乙发现的错误数为B2。

T= T1时两个测试员发现的相同错误数为bc

演绎法:(从一般到特殊,即从通用知识等出发提出可能的缺陷假设,再根据信息验证。)先列举一些可能的原因或假设,然后进行逐个分析,排除不能确立的原因和假设,直到仅剩一个被证实。

网址:中国海洋大学 https://www.yuejiaxmz.com/news/view/1446274

相关内容

中国海洋大学详细
中国海洋大学法律硕士教育中心是属于海洋大学的一个学院吗?
中国海洋大学团委扎实开展大学生社区实践
中国海洋大学图书馆的服务指南
求中国海洋大学三个校区的地址,邮编。
Science Advances刊发中国海洋大学团队深海细菌耐压机制研究新进展
关于举办中国海洋大学“二手书跳蚤市场”的通知
陈大可:一位物理海洋学家眼中的“自然哲学”
查找: 机构=国家海洋环境监测中心
“海洋生活美学”获高度认可,国贸地产荣膺两项品牌大奖

随便看看