随着应用系统数量不断增加、系统规模不断扩大以及微服务架构持续推进,系统间模块间的关联关系越来越复杂,全面的测试设计不仅要考虑所测试系统,还要考虑关联交易以及上下游关联系统。通过在工作中不断摸索尝试,本文简述在跨系统复杂业务场景有着较高应用价值的全流程测试方法论。

一、当前问题目前,测试案例设计存在过程不清晰,交易场景复杂时易遗漏测试路径等问题。测试人员拿到需求说明书后,一般是在纸上或脑海里构想出一条条测试路径和各种场景,直接编写案例,这一思维过程并非标准化的执行过程,如果是跨多系统交易逻辑复杂的项目,对于案例评审专家来说,这种非显性的思维过程难以观测,仅凭纷繁浩渺的测试案例无法有效评审是否遗漏特殊的场景和测试路径。二、解决方案

全流程测试是一种覆盖项目全生命周期、关联系统关系以及全业务场景的软件测试方法论。本文使用全流程测试方法论中的跨系统复杂业务场景测试设计方法(即:横向全流程测试能力集),助力测试案例覆盖跨系统复杂金融场景。在系统测试过程中,通过结合业务逻辑视图和技术架构视图,对被测业务模块的关联系统关联业务流程进行梳理、归纳,实现全流程测试,使被测对象的各个功能通过业务流程贯穿起来运行,模拟真实用户实际的工作流程,从而验证流程的正确性。

使用场景法完善测试案例覆盖(以试点项目:某市统建智慧政务APP某融资项目为例)只需填好excel模板表格即可。

步骤1梳理基本流-备选流-异常流

场景业务流指不同输入选择和不同交易顺序组合产生的业务流程。场景业务流通常分为三种:基本流、备选流、异常流。

基本流

表示通过业务流程时所有的输入和选择都正确,最终能达到目标的流程。

备选流

表示通过业务流程时有部分或全部的输入错误(或者操作错误)导致流程存在反复,但通过系统逻辑的自行纠正仍能最终达到目标的流程。

异常流

表示通过业务流程时输入或选择产生的错误(或操作错误)无法通过系统自动纠正达到目标,而是异常终止的流程。

以某融资项目实践为例,此步骤只需填好表格即可:

表1:某融资项目基本流、备选流和异常流

步骤2   流程图(可选)

绘制流程图,再次确认流程路径。根据基本流、备选流和异常流生成场景。由于在电脑中画图比较费时费力,我们这步可以在草纸上用笔画个原型即可,不要求体现在后续文档中,极大减轻了测试设计者的工作负担!

1:基本流、备选流和异常流关系图

以某融资项目为例,绘制某银行产品发布模块的业务流程图:

图2:某融资项目的基本流、备选流和异常流流程图

步骤3测试路径表

根据流程图提取测试路径。本步骤只需根据基本流、备选流、异常流填写路径表格即可,每个流可能对应一个或多个路径。

表2:某融资项目某银行产品发布模块的测试路径表

步骤4细化路径,抽取测试用例

通过边界值、等价类等方法细化路径,抽取测试用例,同时去掉生产上不可能存在或重复的情况。注意,测试路径与测试案例不一定要一一对应。

三、结语

全流程测试方法相比于传统的案例设计方法有三大优势:一是把需求-场景-路径-案例的映射关系清晰地展现在表格中,使测试设计过程显性化。二是在同业务部门和开发部门进行案例会审时,便于业务、开发人员直观理解案例设计的思路。三是增强测试场景及流程的完备性,防止遗漏部分测试路径。

目前该方法已在新一代资产管理平台、债市宝系统建设、对公存款分布式核心系统(一期)和黑龙江、吉林和山西非税收入收缴适应性改造等试点项目中实践。通过对测试场景及流程的补充和完善,以最小的资源投入,覆盖尽可能多的流程,提高测试案例的缺陷命中率,最终实现测试工作整体的提质增效。

下一步将继续秉持求是、专业的理念,加强业技融合、研测协同,交叉覆盖测试场景,提高测试的完备性和广度,为我行数字化转型贡献力量。

人物简介:张兆吉,就职于测试二部,从事公司业务及大客户领域测试工作。爱好羽毛球、电音,对生活充满热情,不断奋进。

smartupload 路径不存在_洞悉复杂金融场景,覆盖完备测试路径相关推荐

  1. 白盒测试基本路径生成工具_基于基本最短路径列生成的车辆路径问题

    论文作者:Alain Chabrier 论文发表日期:2005 摘要 车辆路径问题的列生成模型通常包含一个基本的最短路径子问题.由于该问题已知算法的最坏情况复杂度过高,其基本路径约束通常被松弛.实际上 ...

  2. 浅析供应链金融业务发展态势及提升路径

    近年来,在国内经济持续转型升级的大背景下,金融领域成为供给侧改革的重要阵地,供应链金融更是备受瞩目. 尤其在产融结合.脱虚向实的政策号召下,供应链金融以其对实体经济强大的刺激及赋能作用,迅速成为振兴实 ...

  3. Android项目_硅谷p2p金融(一)-宋红康-专题视频课程

    Android项目_硅谷p2p金融(一)-8883人已学习 课程介绍         硅谷p2p金融项目,结合现有第三方应用市场上主流p2p金融理财产品特点,集成了新的技术与框架.该项目内容包含p2p ...

  4. java resources目录 编码_关于Java项目读取resources资源文件路径

    在看此篇博客是建议清楚classpath代表的路径,getServletContext().getRealPath("/")的含义,idea中项目编译后的目录格式,resoures ...

  5. android根据文件路径打开文件_你知道如何在打印的文件上面添加文件的路径吗...

    Excel中的文件打印出来,你知道可以将你打印的文件所在的路径也打印出来吗? 当我们把文件的路径添加好了,打印出来了,就可以清晰的知道我们这个文件所在的位置,在以后修改或者查找文件的时候就很方便啦! ...

  6. python读取路径太长_路径名太长,无法打开?

    常规DOS路径限制为MAX_PATH(260)个字符,包括字符串的终止字符NUL.通过使用以\\?\前缀开头的扩展长度路径,可以超过此限制.此路径必须是完全限定的Unicode字符串,并且只能使用反斜 ...

  7. 根据测试路径自动生成测试用例_自拍教程75Python 根据测试用例选择测试资源

    案例故事:Android手机音视频图片解码播放测试,有将近上千条用例, 包含了不同的音视频图片文件,每条用例都至少对应了一个测试资源文件.整个测试资源仓库,将近100G,一些视频比如High Prof ...

  8. java两个文件夹比较路径_比较Java中两个文件的路径

    java两个文件夹比较路径 Given the paths of the two files and we have two compare the paths of the files in Jav ...

  9. java io 文件路径_如何从Java项目中的相对路径读取文件? java.io.File找不到指定的路径...

    如何从Java项目中的相对路径读取文件? java.io.File找不到指定的路径 我有一个包含2个包的项目: ListStopWords.txt ListStopWords.txt 在包(2)中我有 ...

最新文章

  1. 配置文件app.config
  2. 这些超级高效的人工神经元不使用电子?
  3. c#初学-索引器get和set的使用(泛型类)
  4. Ubuntu终止进程的方法(kill、pkill、killall)
  5. ubuntu 启用root 并使用ssh登陆
  6. 再次学习mysql优化
  7. Apache Mesos + Marathon和Java EE
  8. 查找算法——折半查找(JAVA)
  9. 关于python的多线程和多进程_Python的多线程和多进程
  10. 怎样把ACCESS导入SQL数据库
  11. nginx,作为前端的你会多少?
  12. 拓扑排序那点事(vector+priority_queue)
  13. 下载mono太慢怎么办?
  14. 一个简单的品优购项目----html+css
  15. 如何去除计算机病毒,怎么清除计算机病毒
  16. TNF1EGS4 OSN1800全新四路交换式千兆以太网处理板
  17. 知其然不知其所以然!
  18. activemq_CVE-2015-5254_漏洞复现_源码分析
  19. keras实现交叉验证以及K折交叉验证
  20. linux的mysql本地yum安装_Linux Centos 下使用yum 命令安装mysql实现步骤

热门文章

  1. 在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值
  2. 一道抛物线自编题的思考
  3. pta_l1-6(连续因子)
  4. uva-10602-贪心
  5. 第五章 文本编辑器 vi 命令-centos7.5知识
  6. linux centos6.5 ftp网页vsftpd配置
  7. Adaboost的几个人脸检测网站
  8. cghhhhhhhhhhhhhhhhhh
  9. 前端教程丨手把手教你用 Next.js 搭建个人博客,从入门到吃鸡
  10. MySQL发展史重大事件