




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、收稿日期 :2005-12-09; 修返日期 :2006-01-18(基于工作流技术的软件测试流程定义与监控*郑小军 , 刘 超 , 晏海华(北京航空航天大学 软件工程研究所 , 北京 100083摘 要 :阐述了软件测试流程的相关概念 , 论述了基于工作流技术实现软件测试流程定义与监控的概念模型 ,详细探讨了软件测试流程定义与实例化和软件测试流程的执行与监控所涉及的主要内容及其具体实现方案 。 关键词 :工作流 ; 测试流程 ; 测试阶段 ; 测试流程控制项中图法分类号 :TP311 51 文献标识码 :A 文章编号 :1001-3695(2007 02-0043-03M echan is
2、m o f D efi n i n g and M on itori ng Soft w are Testi ngFlo w Based onW orkfl o wZ HENG X iao-j un , L I U Chao , YAN H a -i hua(Soft wa re Eng i neering Instit u te , B e i hang Un iversit y, B eiji ng 100083, C hinaAbstract :Th i s paper expati ates the concepts related to soft ware testi ng flo
3、w, d i ssertate t he connecti onalm odel of m i ple m en -ti ng the defi n iti on and mon itoring of soft w are testi ng fl ow based on theworkfl ow technol ogy . It also discusses i n detail about them ain content and specific realizati on sche m e i nvolved i n t he defi n iti on , i nstanti ati o
4、n , executi on and m on itoring of soft ware tes -ti ng fl ow. Key words :W ork flo w; Soft w are Testi ng F l ow ; Test Phase ; Soft w areTesti ng Flo w Control Ite m1 引言研究新的开发方 法、 技术和工具以提高软件项目的生产效 率和质量一直是软件 工程研究的热点。三十多年来 , 尽管新的 开发方法和技术在软 件开发过程中的应用起到了一定的作用 , 但软件产业随着软件 规模和结构 复杂度 的提高 依然没 能摆脱 项目延期及超出预
5、算 的困扰。一个成功的软件 项目意味着 能够在 没有超 出预算 的情况 下 , 按时交付质 量合 格的 软件 产 品。 I EEE 资 料表 明 , 仅 1995年一年内 , 大型软件系统的失败率 (取消率 达到了 20%; 而在 剩下的 80%中 , 大约有 2/3的项目延期 , 并且有 些项目 的经费 开支超过了预算的一倍 ; 而且也有 2/3的项目因为第一年开发 中所存在的可靠性和 质量方面的问题而频频出现故障1。许多企业项目屡 遭失败的主要原因是 :缺乏有效的软件 过程管理体系 , 过多地依赖 软件设 计与开 发者的个 人素质 ; 大多没有建立起完善 的质量保障体系 , 忽视软件测试的
6、重要作 用。软件测试是软件 质量保证的关键步骤 , 软件开发生命周期 中受到最多关 注 的 就是 测 试 2。测 试 的 目标 是 以 最 少的 人力、 物力和时间投入 , 尽 可能多地 找出软 件中潜 在的各 种错误和缺陷2。建立良好的测试过程 管理体 系不仅 能够发 现错误和缺陷 , 保证产品质量 , 还能够 通过对测试过程进行度量 , 辅助 组织进行过程改进 , 提高测试生产率 , 降低测试成本。因而 , 研究有效的软件测试过程管理方法就成为近年来的一个热点。经过软件专家 们的不懈努力 , 软件测试过程管理的 理论已相对成熟 , 测试的技术、 方法和工具得到了相当的发展 , 但是对软件测
7、试 流程的定义 及监控 却缺乏 相应的研 究。为了 使测试管理方法 能够适合不同类型软件的测试 , 适合不同软件 测试部门的测试 流程 , 开发具有软件测试流程管理功能的软件 过程管理工具就 成了一种需 要。由于工 作流技 术已经 成为目 前比较流行的过 程实现技术 , 本文的研究就以工作流技术为依 据 , 探讨如何对软件测试流程进行定义与监控。2 工作流技术近几年来工 作流管理技术 逐步被应 用于过 程自动 化以及 应用系统集成中 。 W M f C 将工作流 定义为一种 过程 , 在该过程 中 , 文档、 信息或任务等 按照一 定的过程 规则在 过程参 与者之 间传递 3。过程是为了实现某
8、 个目标而 将一系 列相互 关联的 活动协调起 来的 一个 集合 3。工 作流 管理 系统 是用 来定 义、 创建和管理工 作流的 软件 系统 3。 W M f C 定 义的 工作流 管理 系统参考模型 4如图 1所示。 此工作流 参考模 型定义 了工作 流管理系统的基 本结构 , 它包含工作流管理系统的主要组件以 及这些组件之间 的接口。(1 工作流 执行服务组件 (Work flow Enact m ent Serv ices 提 供了一个运行环 境 , 在该环 境中 , 利用一 个或多 个工作 流引擎 进行过程的实例 化、 解释以 及激活 , 并且 支持与 外部必 要的资 源的交互。它由
9、一个或多 个创建、 管理和执行工作流实例的工 作流引擎组成。(2 工 作流 引擎 (Workfl ow Eng i ne 是一 个为 工 作流 实例 提供运行执行环 境的软件服务。(e fi 43 第 2期 郑小军等 :基于工作流技术的软件测试流程定义与监控并记录业务过程。它输 出一个能 被工作 流引擎 解释的 过程定 义。(4 工作流管理和 监控 组件 (A d m i nistrati on &M onitor i ng 主要负责对工作流实 例的运 行进行 监控。管理 员可以 通过工 作流管理工具获得目 前各个活动的运行情况报告 , 并干预实例 的行进。(5 工作流客 户端 应用组
10、 件 (W ork flow C li ent A pp licati on 是与活动相关的人员 进行交 互的软 件实体。通 常包括 工作列 表 (W o rk list 以及工作列表管理器 (Wo rkli st H andler 两个主要 组成部分。(6 外部应用调 用组件 (Invoked A pp licati ons 是指 工作流 执行服务在过程运行 中调用处理应用数据的外部应用程序。(7 其他 工作流 执行 服务 组件 (O t her W o rkfl ow Enact m ent Serv ices 是不 同的工作流管理系统之间的互操作。3 测试流程相关概念在具体讨论软件 测试
11、流程定义及其监控之前 , 我们先明确 文中所述的几个与软 件测试 流程相 关的概念。 首先我 们先讨 论一下软件过程的定 义。软件过 程是软 件工程 界讨论 和研究 的热点之一 , 依据 C MM (能 力成 熟度 模型 的观 点 , 软件 过程 是指软件开发人员开 发和维护软件及相关产品的一套行为、 方 法、 实践及变换过 程1; 从工 作流 的角 度理 解 , 软件 过程 是软件生存周期中为达到 某个目标而 必须实 施的所 有软件 工程活 动的集合 6。依据 软件 过程 定义 , 我 们给 出软 件测 试过 程及 相关概念的定义如下 :定义 1 软 件测试过 程是在 软件测 试中为 达到某
12、 个目标 而必须实施的所有活 动的集合。定义 2 测试阶段是软件测试 过程中的子 过程 , 是根据某 种要求对测试过程进 行的一种划分。定义 3 测 试流程是 由测试 阶段以 及这些 测试阶 段之间 的转移关系、 各测试阶段的相关数据以及测试流程控制项等构 成。定义 4 测试流程控制项是依 据测试过程 管理的需要 , 从 各个测试阶段中提取 出来的阶段完成所必须满足的前置条件。定义 5 测 试流程模 板指的 是用户 可以在 不同的 项目中 进行重用的测试流程 。定义 6 测 试流程实 例是指 测试流 程模板 与某个 具体测 试项目相结合 , 设定了测试 流程模 板中的 相关属性 , 用 来对具
13、 体测试项目的流程进 行控制。软件测试过程一 般包括四个阶段 , 即测试策划、 测试设计、 之间的关系、 测试流程控制项和测 试阶段 基数 (测试流 程所包 含的测试阶段 个数 。测试 阶段 之间 的关 系主 要有 串行 和并 行两种关系。测试阶段主 要包含计划起 止时间、 实际 起止时 间、 运 行状 态、 启用状态等属性 , 其中运行状态 有未开始、 活动、 暂停、 完成 四种状态 , 只有测试阶段处于活动状态时测试阶段中的功能才 能被使用 , 处于其他三种状态时都不能被使用。启用状态包含 启用和禁用两种 状态。测 试阶段处于禁用状态时 , 不受测试流 程所定义的约束 所控制 , 测 试阶
14、段 中的功 能可以 被任意 使用 ; 测试阶段处于启 用状态时 , 测试阶段将受到测试流程所定义的 约束的控制。测试流程控 制项主要有启用状态和完成状态两个属性 : 启用状态包含启 用和禁用两 种状态。测 试流程 控制项 处于启 用状态时 , 它在测试流程中 起作用 ; 测试 流程控 制项处 于禁用 状态时 , 它在测试流程中不起作用。完成状态包含未完成和 完成两个状态 , 分别表示测试流程控制项中定义的条件是否满 足。测试阶段与 测试流程控制项之间的关系是 , 一个测试阶段 中可能包括几个 测试流程控制项 , 一个测试流程控制项只可能 属于一个测试 阶段。一 个测 试阶 段如 果受 流程 控
15、制 (即 测试 阶段的启 用状 态处 于 启用 时 , 那么 该 测试 阶 段 完成 的 条件 是 :当测试阶段的计划终止 时间到 达时 , 属于测 试阶段 的启用 状态为启用的测 试流程控制项的完成状态均必须为完成。测试流程模 板就是没有对 测试流程 的相关 信息进 行设定的 , 可以被多个项目所使用的测试流程。测试流程实例就是对 测试流程模板中 的相关信息进 行设定并 用于对 具体项 目进行 控制的测试流程 。测试 流程模 板与测试 流程实 例之间 的关系 就好像面向对象 技术中类 (C lass 和对象 (O b j ect 的关系。本文首先设 计一种流程定义工具 , 对测试流程模板进行
16、图 形化的定义 , 针对具体测试项目对测试流程模板进行实例化生 成测试流程实例 , 然后通过对测试流程实例的执行和监控对测 试项目进行控制 。4 测试流程定义与监控4 1 测试 流程定义与监控系统框架根据软件测试过程的 特点 , 本文对图 1的工作流管理系统 参考模型进行了 简化 , 将测试流程定义与监控系统的结构分为 五个模块。其 UM L 用例包图表示如图 2所示。其中 , 测试流程定义组 件、 软 件测试 流程执 行和监控 组件 以及管理组件 将在 下面说 明。测 试应 用组 件 (测试 过程 管理 工具的核心内容 主要用 于管 理各测 试阶 段内 部的 数据 流转 和操作 ; 数据外部
17、组件主要用于对测试流程实例执行中的某些 实际数据进行相 应的描述以及外部处理 , 这两部分内容并非本 文论述的重点 , 不再赘述。44 计算机应用研究 2007年4 2 测试流程 的定义与实例化从实现的角度讲 , 测试流程是用于定义测试过程中的测试 阶段及其关系 , 其中包括指 明测试 阶段的 开始和 结束的条 件、 测试阶段本身 的信 息以 及测 试阶 段中 的测 试流 程控 制项 等。 对测试流程的定义 , 可以采用基于文本和基于图形可视化两种 方式。为了方便用户的使用以 及测试流程定义的直观性 , 本系 统采用可视化图形定 义方式定义测试流程。4 2 1 测试流程的定义测试流程是由测 试
18、阶段以及 这些测 试阶段 之间的 转移关 系、 各测试阶段产生的相关数据以及测试流程控制项等四种关 键元素构成 , 同时这四种元 素之间 有各种 关系 , 各个元 素本身 又有其自身特点。测试流程的定义 是指利用现有的测试流程 , 通过裁减或者 新建一个测试流程作 为控制具体测试项目的可以重用的资源 , 这些资源被称为测试 流程模 板。这些操 作均采 用可视 化图形 操作方式 , 在测试流程模板 的可视 化绘制 和显示中 , 本 文采用 了 UM L 活动图建模 符号 的子 集 , 包括 起始 图 元、 测试 阶 段图 元、 并发同步图元、 连接图元和结束图元 五种图元。起始图元、 结束图元、
19、 并发同步图元、 连 接图元 基本与 UM L 保 持一致 , 测 试阶段图元采用 UM L 中的活动图元表示。图 3为利用测试流 程定义工具绘制的串 并行四阶段测试流程。其中 , 并行的意义 表示除了测试阶段的 起止时间可以重叠之外 , 其他的前置条件 均相同 ; 串行的意义是指后面测试阶段的开始受制于前面测试 阶段是否完成。用户通过图形化 方式绘制测 试流程 中的测 试阶段 和它们 之间的串并行关系。绘 制的测试 流程控 制模板 保存时 必须对 以下规则进行合法性 检查 :(1 图元规则。必须有且 仅有一个起 始图元 和结束图 元 ; 流程图中测试阶段图 元的数目必须小于等于流程模板基数
20、; 流 程起始图元的入度必 须是 0, 除流程起始 图元外的所 有图元的 入度必须大于等于 1; 流程 结束图元的出度必须是 0, 除流程结 束图元外的所有图元 的出度必须大于等于 1; 起始图 元与结束 图元不能相连 ; 除了并发同 步图元 外 , 所 有图元 之间的 连线不 能超过一条。(2 测试阶 段规 则。测试 阶段的 名称 必须 在预 先定 义的 测试阶段名称集合中 , 测试阶段之间的顺序必须满足一定的约 束。例如 , 如果预先定义了四个测试阶段 , 即测试 策划、 测试设 计、 测试执行和测试总结 , 那么就 不能定 义一个 名称为 测试准 备的测试阶段 , 测试设计要 么与测 试
21、策划 并行 , 要么在 测试策 划之后出现 , 不能将测试策划放在测试设计之后。用户在完成了测 试阶段以及 相互之 间的转 移关系 的定义 后 , 可以对属于各 测试 阶段 的流 程控 制项 的启 用状 态进 行设 定。在四阶段测试流程中 , 测试流程控制项的启用状态为启用 的意义以及所属的测 试阶段如表 1所示 。4 2 2 测试流程的实例化软件测试流程的 实例化是指 对选择 的测试 流程模 板所进 行的一系列操作。这些操作包 括 :首先要针对具体的测试项目 根据需要选择一个测 试流程模板 , 然后设定测试流程控制所必 需的信息 , 在通过了合法 性检查 之后 , 最后启 用流程。 实例化表
22、 1 测试流程控制项启用意义及所属测试阶段表测试流程控制项名称启 用 意 义 所属测试 阶段控制项 目组人 员定义测试项目负责人至少需 要为该项目 指定一 个测试员、 一个开发人员、 一 个测试分 析员以 及测试设计员和质量保证员测试策 划控制测 试需求 定义测试项目负责人必须定 义该测试项 目的测 试需求测试策 划 控制测 试计划 提交审批测试计划文档必须提交审批 测试策 划 等待测 试计划 审批通过测试计划文档必须审批通过 测试策 划 控制测 试需求 细分和人员分配必须进行初始的测试需求细分和人员分配 测试设 计 控制测试项覆 盖系统判断每个测试项至 少有一个测 试用例 覆盖测试设 计控制
23、测 试用例 提交审批每个测试用 例必须 提交 测试 用例 审批 , 否 则无法从草稿状态成为 定稿状态。测 试用例 的状态必须全为定稿状态测试设 计控制测 试说明 提交审批测试说明文档必须提交审批 测试设 计 等待测 试说明 审批通过测试说明文档必须审批通过 测试设 计 控制测 试就绪 审批测试就绪文档必须审批通过 测试执 行 控制软 件问题 归零没有软件问题处于打开、 新建、 待验状态 测试执 行 控制测 试用例 执行结果每个测 试用 例的 执 行结 果 必须 均 不是 未 执行 , 阻碍测试或部分测试测试执 行 控制测 试用例 执行每个测试用例必须拥有至少一个执行结果 测试执 行 控制测
24、试任务 执行所有的测试任务必须是完成状态 测试执 行 控制测 试总结 报告提交审批测试总结报告文档必须提交审批 测试总 结 等待测 试总结 报告审批通过测试总结报告文档必须审批通过 测试总 结 测试流程模 板实例化中需 要对测试 流程相 关的所 有数据 进行设定 , 包括测试阶 段、 测 试流程 控制项 信息的设 定。测试 阶段中主要对测 试阶段的计 划起止时 间、 运行状 态进行 设定 ; 测试流程控制项 主要对测试流程控制项的启用状态进行设定。 测试流程模 板实例化完成后 , 数据合法性检查必须通过后 才能启用流程 , 对实际测试项目进行控制。这里所说的合法性 检查就是对以下 规则进行检查
25、 :必须对测试 阶段的计划起止时间进行设定 ; 各个测试阶段 的起止时间不能 超出测试项目的时间范围 ; 测试阶段的计划结 束时间不能早于 计划开始时间 ; 一个测试阶段如果有前序测试 阶段 , 那么它的计划开始时间必须晚于前序测试阶段的计划结 束时间。4 3 测试 流程执行和监控测试流程的 执行和监控 是工作流 引擎的 一个简 化。测试 流程的执行主要 是指依据测试 阶段的计 划起止 时间以 及测试 阶段之间的约束 关系对测试阶 段实行自 动启动 和自动 完成功 能 ; 依据测试流程控制项的启用意义对测试过程产生的数据和 文档进行统计 , 并设定测试流程控制项的完成状态。测试流程 对应用程序
26、的控 制主要是依据 测试阶段 以及测 试流程 控制项 的各种状态为测 试应用程序提供访问接口 , 进而对应用程序进 行控制。(页 45第 2期 郑小军等 :基于工作流技术的软件测试流程定义与监控式函数及径向基函数 相互比较 , 最终确定采用最常用的径向基 函数 ; , C 等参数 采用 交叉 验证 方法 (C ross V ali dati on , CV 确 定为 =1, C =103; 使用 SVM C l assifi er MATLAB T oolbox 工具 包进行实验分析 , 数据为 20个 测试样 本点。预测 结果显 示如 图 2 所示。如图 2和图 3所示 , 两幅图中的 *
27、和 o 分别 表示测试 样本集中信用好的企业和信用 差的企业。图 2表示 20个测试 点的真实值 , 图 3表示 20个 测试 点的 预 测值。 可以 看出 , 20个测试点中绝大部分 点被正确划分 , 只有极少点划分错误。 2 3 结果分析表 1列出 了 S VM 与 PP 模 型 的 结 果 , 同 时 与 神 经 网 络 (NN 所建模型的结果进行了比 较。神经网 络使用 的是 BP 算 法 , 由于神经 网络方法并 不是一种 稳定的方法 , 故表 1中神经 网络的结果是 15次的平均结果。表 1中第 一类错误是指将信 用好的企业评判为信 用差的企业 , 第二类错误是指将信用差的 企业评
28、判为信用好的 企业。可 以看出 , S VM 与 PP 在 测试样本 集 中 的 预 测 准 确 率 达 到 了 90%, 明 显 好 于 NN 模 型 的 83 17%; 我们还发现 , S VM 与 PP 的第一 类错误 率和第 二类错 误率均小于 NN 的 第 一类 错误 率 和第 二类 错 误率 ; 从 识 别速 度 , 也就是指将原 始数 据输 入计 算机 得到 最后 结果 的时 间上 看 , S VM 与 PP 也有很大提高。3 结论一个基本的 模式识别系统 主要是 由数据 获取、 预处理、 特 征提取和选择以 及分类决策 所组成。本 文主要 对其后 两部分 进行了讨论 , 提出了
29、一种基于投影寻踪与支持向量机的模式分 类方法。该方法首先利 用投影 寻踪对传 统的指 标进行 特征提 取 , 把多维评价指标综合成 一维投 影指标 , 然后 通过支 持向量 机构造广义最优 超平面。实验表明 , 这一方法大大降低了特征 空间的维数 , 并有很好的分类正确率。参考文献 :1李祚泳 . 投 影寻 踪 技术 及 其应 用 进展 J.自 然杂 志 , 1997, 19(4:224-227. 2Vapn i k. 统计学习理 论的本质 M.张学 工 . 北京 :清华大 学出版 社 , 2000.3黄晓荣 , 付强 , 梁川 . 投影寻踪分类模型在工程评标中的应用 J.哈尔滨工业大学学报
30、, 2004, 36(1:35-38. 4M L Ray m er , et a l . D i m en si onalit y Reducti on U si ng Gen etic A l go -rit hm sJ.I EEE T ransacti on s on E voluti onary Co m putation , 2000, 4(2:164-171. 5Fri edm an J H, Tu rkey J W. A P roj ecti on A l gorith m for E xp l oratory Data Anal ys i sJ.I EEE T rans . on
31、 C o m pu ter , 1974, 23(9:881-890. 6邓乃扬 , 田英杰 . 数据 挖掘中 的新 方法 支持 向量 机 M .北京 :科学出版社 , 2004.7丁欣 . 国外信用风险评估方法的发展现状 J.湖南大学学报 (社会科学版 , 2002, 16(3:140-142.8刘闽 , 林成 德 . 基 于支 持向 量机 的商 业 银行 信用 风险 评估 模型J.厦门大学学报 , 2005, 44(1:72-75.作者简介 :赵晓翠 (1981-, 女 , 山东东阿人 , 硕士研究生 , 主 要研究方向 为运筹与 优化 、 支持 向量机 ; 王 来生 (1954-, 男 , 吉 林人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 轨行区施工方案
- 2017-2018学年人教版高中地理选修6课时提升第二章第三节大气污染及其防治
- 高考数学人教A版理科第一轮复习单元测试题第十章算法初步统计与统计案例
- 贵州省贵阳市高三下学期适应性考试(一模)理综物理试题
- 例谈基于深度学习的科学实践教学
- 2025版高中数学第三章导数及其应用3.3.3导数的实际应用练习含解析新人教B版选修1-1
- 兴趣班合同范例
- 全椒农场转让合同范例
- 供销社土地租赁合同范例
- 两兄弟建房合同范例
- 第二章陆地和海洋【真题训练】(人教版)(原卷版)
- 小吃街概念性规划
- 电商提成合同模板
- 正念八周课件
- 光伏发电监理合同协议
- 新能源汽车概论课件 3.1认知纯电动汽车
- 河北美术出版社小学六年级下册书法练习指导教案
- 《食品标准与法规》知识考试题库300题(含答案)
- 基本乐理及音乐常识类知识考试题及答案
- 人教版(2024)七年级上册英语各单元短文填空练习题汇编(含答案解析)
- DB61∕T 1165-2018 高速公路服务区服务规范
评论
0/150
提交评论