业务模型在软件测试中的应用
作者:网络转载 发布时间:[ 2011/1/5 15:21:17 ] 推荐标签:
软件测试是保证软件质量的重要手段,在整个软件生存期中占有重要位置。目前软件测试已不再仅仅作为软件产品开发之后的附加活动,而被看作软件开发的重要组成部分。但是,现有的测试方法仍存在着一些限制和不足,体现在以下几个方面:
①沟通问题。在没有形式化的软件说明文档情况下,如何无障碍沟通软件测试需求,尽可能早的开展测试活动。
②分配问题。在软件产品不断迭代情况下,如何分配有限的测试资源,选择有效的测试策略,使测试工作效能达到大。
③维护问题。在软件模块频繁改动情况下,如何精确、高效地维护测试用例,避免测试用例严重滞后于业务规则是软件实现的基础,是软件系统解决用户业务问题时所必须遵守的准则,如何利用业务规则建立模型驱动测试活动是当前工业界研究和实践的热点之一。使用规范的、易理解的场景描述业务规则,共同建立业务模型,并在软件测试过程中应用该模型。首先,可以根据此模型沟通软件测试需求,以此为依据确认、验证软件系统;其次,软件开发设计与测试设计可以根据模型同时进行,缩短响应变化的周期;后,由于业务规则不易变化,所以根据业务模型设计的测试用例具有更好的稳定性,而且业务模型与测试用例之间存在联系,可以提高测试用例维护工作的准确性与效率。
本研究将业务规则与场景技术相结合,提出了基于业务模型的软件测试过程,并对其中的关键技术进行研究。后,通过某信息采集系统的测试实践表明,本研究可以有效的帮助测试人员在软件测试项目中进行准确沟通、合理分配测试资源与高效维护测试用例。
1、业务模型在软件测试中的应用
1.1 基本概念
本研究提出的业务模型可以表示为BusinessMod.el=(RG,SG,FG,RMF,SMF)。其中,RG表示业务模型中所有业务规则的集合;SG表示所有场景的集合;FG表示所有业务流程的集合;RMF表示业务规则与业务流程间的关系,集合,即对于∈RG,∈FG,当业务规则属于业务流程z时,fr()=Z;SMF是场景到业务流程的关系集合,即对于Y∈SG,∈FG,当场景Y属于业务流程时(Y)=。
1.1.1 业务规则
依据业务规则组织(BRG,BusinessRulesGroup)定义:“业务规则是支持企业决策,影响或控制企业业务行为的指示”。业务规则是对业务结构和影响业务行为的一种约束,它说明在指定情况下必须做什么和不做什么。业务规则具有完整性与一致性等特性。完整性是指单个规则作为一个整体发挥作用,而一致性是指在业务活动中规则自身不发生变化时,相同输入条件导致相同输出结果。业务规则的这些特性为基于业务模型生成测试用例提供必要条件。
1.1.2 场景
场景是由一系列相关状态组成。它描述软件系统的运行状态,反映软件功能的任务剖面。场景小单位是原子场景。这些原子场景的输入与输出能从系统外部环境直接施加和截取。原子场景是不可再分且独立可测的。多个具有紧密关系的原子场景能组合成子场景。子场景又可以组合成为代表了被测系统功能包的复合场景,它反映了系统更高层面功能集合。场景可以抽象表示为一个五元组:S=(IV,OV,PC,P,F),其中,IV、OV、PC、P、F分别代表了场景的输入集、输出集、前提条件、优先级与场景功能描述。
1.1.3 业务流程
业务流程是业务模型中业务规则与场景的结合点。业务流程是一组将输入依据业务规则转化为输出的相互关联或相互作用的活动。业务模型使用场景描述业务流程,说明软件系统如何解决用户业务问题。业务流程是从用户角度对系统的动态描述。场景是从开发人员角度对系统静态分析,使用静态场景描述动态业务流程,必须补充场景转移关系。场景转移关系包括“顺序”、“循环”、“判断”与“并发”。
1.2 基于业务模型的软件测试过程
软件测试过程一般有计划、设计与开发、实施、评估4个阶段,业务模型可以完全融合到软件测试过程中,并贯穿整个软件测试过程。
1.3 测试用例的生成
在业务模型的业务流程与测试用例集的测试用例之间建立联系,根据业务流程要素确定测试用例要素:
①根据业务流程标识确定测试用例标识符。
②根据业务流程步骤确定测试用例步骤。
③根据业务流程关系场景的前提条件确定测试用例前提条件。
相关推荐
最新发布
性能测试之测试环境搭建的方法
2020/7/21 15:39:32软件测试是从什么时候开始被企业所重视的呢?
2020/7/17 9:09:11Android自动化测试框架有哪些?有什么用途?
2020/7/17 9:03:50什么样的项目适合做自动化?自动化测试人员应具备怎样的能力?
2020/7/17 8:57:06几大市面主流性能测试工具测评
2020/7/17 8:52:11RPA机器人能够快速响应企业需求,是怎么做到的?
2020/7/17 8:48:05Bug可以真正消灭吗?为什么?
2020/7/17 8:43:03软件测试基本概念是怎么来的?软件测试生命周期的形成历经了什么?
2020/7/16 9:11:10