随着银行业务的快速发展,新兴互联网金融业态的兴起,科技信息软件的更新迭代速度日新月异,用户对软件质量、用户体验也有了更高的要求,而规范、有效的测试是保证软件质量的重要环节。软件质量的提升,首先是要形成一套行之有效的测试体系,但光有体系远远不够,还需要具备相关技能的人员来执行、落实体系

一、现状

目前,大部分银行均组建了专业的测试队伍(包括功能、性能、自动化、数据类测试等多个领域),但因人员有限,有的做纯粹的管理,有的既做管理又承接部分项目测试工作,主要的系统测试工作由弱矩阵团队完成。这种临时组成的测试团队,由于未经团队能力整合和专业的测试技能训练,给项目经理的过程和风险管理增加了难度,对项目的质量也造成一定影响。如何让非专业人员快速具备基础的测试技能、掌握基本的测试方法,从而提升软件质量,成为一个亟待解决的问题。

二、给测试新人的建议

(一)转换角色,改变视角。

我们操作软件的大多数时候是扮演软件定义的普通用户角色,按照软件预设的功能、流程去使用它。但作为一个测试人员,我们不仅仅是普通用户,测试人员需要扮演各种角色。

1、假设自己是前台用户、后台管理员,甚至是系统维护人员等等,需要把各种角色、不同权限的用户会使用到的功能全部试用一遍(专业术语称之为“正用例”)。

2、假设自己是对系统一知半解的用户,尝试用户可能进行的各种异常操作是否会被软件正确拦截(专业术语称之为“反用例”),如:报错是否友好,提示是否具有引导性、无歧义。

3、假设自己是不同属性(国籍、年龄、职业、知识水平等等)的用户,检查软件对不同属性的用户支持是否良好(专业术语称之为“国际化测试”、“体验测试”等),如:字体是否够大,便于视力障碍者阅读,是否支持多语言,不会对其他国籍的用户造成使用障碍。

(二)掌握方法,训练“测试思维”。

测试用例设计有多种方法论,如:边界值、等价类、场景法、正交分解法等等,具体在本文不进行详谈,有兴趣的人可以去百度。不管是什么样的方法论,究其根本,就是测试的思维方式,作为一名的测试人员,应当具备什么样的思维。

1、整体性思维,能看到整个系统、关注全局,不局限于自己所负责的那一小块内容。如:测试参数维护交易,不能只关注参数能否正确增、删、改、查,还应当关注调用到这些参数的交易,能否正确的工作,参数的变化是否生效(具体的业务如:柜面的利率产品维护、信贷管理系统的评分授信参数维护等)。

2、试错思维,在测试工作中脑袋里时刻有根弦,用怀疑的眼光来看待软件,避免自己陷入条条框框,测试过程中放不开手脚。如:一个输入框,需求约定输入框只能输入大于 0、小于等于 50000 的数值型数据,并对非法的数据进行提示。测试中除了关注约定的数据可被正确提交,还应当关注范围外的数据是否会被拒绝,尝试字母、特殊符号、边界值(-1、50000.01)等能否被提交,甚至可以尝试拔出网线,检查是否能正确提示。

(三)多参与“众测”,在实践中提升。

“众测”,即在系统上线前,依托专业平台或内部自行组织的一种测试方式。以“百度众测”为例,“百度众测”隶属百度质量部,在百度众测,用户可以第一时间体验百度的产品,提交体验结果,让百度产品凝结大家的智慧,以及学习、分享测试方法和测试技巧,并通过测试社区与成百上千的优秀测试者沟通交流,分享测试心得,通过百度测试平台的评价系统能够检验自己的测试水平并获得与自己能力相应的肯定与声誉。

再如微软的 Dogfood,微软针对他们的每一款产品,都会进行严格的“Dogfood”测试。微软借用这种工作方式,在每一种产品完成之前,内部的员工必须先进行试用,这样就等于有几万名的测试人员在测试软件。Dogfood 的目的不仅仅是为了找到 Bug,还有一个作用就是帮助改进界面、操作的设计。

通过参与“众测”,将理论与实践结合,提升自己的测试能力。目前可自主报名成为测试工程师的有诸如:百度 MTC 等。

(四)勤于沟通,取长补短。

遇到测试的问题,多请教测试组长、项目组中的业务专家、开发人员等。通过沟通,提高自己对系统的认知,沟通的另一个作用可以与项目干系人建立良好的关系,便于后续工作的开展。

三、测试开始前的准备

(一)掌握工具

熟练掌握测试工具,学会在工具上执行用例、提交缺陷、跟踪及验证缺陷。使用工具有如下好处:首先是让测试过程可视化,工具会自动记录每个人的执行过程,管理人员通过工具可以及时发现测试中的不足、风险,及时介入测试管理;其次是沉淀测试资产,通过平台管理的测试用例、典型缺陷,都可以成为其他项目借鉴参考的内容,让其他项目引以为鉴,少走弯路;再次是便于缺陷的跟踪、处理,避免反馈的软件问题无记录、无跟踪。

(二)熟悉需求

业务需求是测试的重要依据,熟悉需求是做好测试的前提。测试人员可以借助思维导图等工具对需求进行详细的分解、梳理,对需求中有疑问的地方,及时与项目的业务代表进行确认。对需求的熟悉程度,要达到以下目标:

1、对项目的需求能整体把握,了解各功能交易之间的业务逻辑关系,这是形成整体性思维的前提条件;

2、对所负责测试的功能需求了如指掌,能在脑海里构建出系统的雏形,提出建设性的意见。

四、测试执行中的注意

(一)充分运用自己的业务经验

如果你从事过银行柜员、客户经理等岗位,不要浪费你的业务经验,要敢于把自己可能进行的各种操作,运用到测试中,大胆地尝试业务操作中各种可能出现的情况,尽量地暴露系统问题。

(二)充分运用自己的技术能力

如果你对技术有一定的了解,要敢于质疑软件的设计是否合理、完备。必要时可以申请源代码进行白盒测试,访问测试环境的数据库检查数据处理的正确性。

(三)把自己的感受表达出来

敢于把自己对软件的感受表达出来,对软件使用不便利、用户体验不好的地方,大胆地提出建议,帮助改进软件质量。

(四)借助已有的资料库学习

测试中有时需要造数或做复杂的交易,这时可能遇到自己从没做过的业务,可通过学习资料库查找、调阅相关操作说明,参照相关步骤进行学习、操作。

(五)多问为什么,与业务、开发多沟通

项目建设离不开沟通,软件测试更离不开沟通。做一个勤于沟通的测试人员,及时地跟进需求变更,调整测试内容和策略;及时地发现软件改动点,进行关联功能的回归测试。

总之,软件质量的提高离不开人员技能提升,通过提升测试人员自身水平,促进整个组织测试水平的提高,从而提升项目的整体质量,是测试管理的最终目的。

最后:

-每天学习一点,今后必成大神-

领取海量软件测试学习资料

软件测试员,你该如何快速提高自己的测试技术?相关推荐

  1. PHP 程序员危机:如何快速成长为不可或缺的技术人才?

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者简介:魏永强,一直致力于百万级访问量企业应用开发,架构工作,参与猪八戒金融产品八戒金融系 ...

  2. 「高效程序员的修炼」快速上手python主流测试框架pytest以及单元测试编写

    如果对你有帮助,就点个赞吧~ 本文主要介绍如果编写Python的单元测试,包括如何使用断言,如何考虑测试哪些情况,如何避免外部依赖对测试的影响,如果用数据驱动的方式简化重复测试的编写等等等等 文章目录 ...

  3. 菜鸟程序员如何才能快速提高自己的技术

    导语:很久没有这么悠闲的在家撸一篇文章了,最近也在思考怎样才能写一些对程序员帮助非常大的文章,怎样去运营好我们这个移动开发者聚集地的公众号:非著名程序员.当初弄这个公众号的本意就是为广大的开发者提供各 ...

  4. 老程序员实战分享,三步让你java技术快速提高

    第一 多敲代码.神枪手不是一天练成的,而是靠几千上万颗子弹喂出来的,才能做到一枪击敌. 第二 多总结,多复盘,如果不思考,还是老样子,技术更新很快,吃不了几年老本. 第三 多加圈子,技术相关的圈子多加 ...

  5. 软件测试员比软件开发员

    知乎上有一篇文章: 软件测试员比软件开发员要求低些吗? http://www.zhihu.com/question/20156659 其中有段回答: " 陈甫鸼,生长于闽,求学入秦,漂泊适燕 ...

  6. 面试软件测试员,差点被骗到“缅北”...

    3月11日晚上23点左右,手机突然收到某求职平台上一家公司打招呼,HR上来就说公司因业务发展,高薪招聘软件测试员,但是需要对外出差.我直接回了句:"去缅北么?",对方不再回复. 第 ...

  7. 软件测试员的思考问题方式(转)

    测试员有很多不同的背景,测试团队是多元化的集体,但是大多数人都同意:测试员的思考方式是不同的.怎么不同?有人说测试员是"消极"思维者.测试员会抱怨这种说法,认为自己喜欢征服,他们在 ...

  8. excel保存快捷键_干货 | 快速提高工作效率的电脑快捷键!

    点击标题下「蓝色微信名」可快速关注 随着科学技术的发展,电脑已经成为每个人生活和工作的必备工具.然而,很多人在使用电脑的过程中非常依赖鼠标,导致双手需要频繁离开键盘,造成工作间歇中断,导致用电脑处理工 ...

  9. identity_insert 如何改为on_十分钟教你如何快速提高Laya构建速度,还不快来康康?...

    前言 如何快速提高Laya构建速度 微信小游戏推出之后,很多公司也相应的进入到微信小游戏这个领域,现在市场上的游戏开发引擎,如Cocos.Egret.Laya都对小游戏有了很好的兼容性.而在实际开发中 ...

最新文章

  1. 北大毕业典礼上,一男博士求婚女硕士成功,网友直呼:科研人的爱情太甜了!...
  2. 关于EXCEL超级链接被禁止的解决方法
  3. 云时代传统服务器被“唱衰”,服务器厂商面临“大考”
  4. android特效按钮点击效果
  5. UA MATH571B 试验设计 QE练习题 不使用代码分析试验结果I
  6. 【算法漫画】什么是红黑树?
  7. UCloud科创板上市获受理,相关文件披露重要经营信息
  8. [转载] lstm时间序列预测_pytorch入门使用PyTorch进行LSTM时间序列预测
  9. 使用XML绑定下拉列表
  10. 软件测试流程五个阶段
  11. 控制工程——传递函数与状态方程
  12. 02_性能_内存调整_个人学习小结
  13. 人工智能“乐高模式”,人工智能进入变革时代
  14. mysql frm的意思_mysqlfrm
  15. Unity学习推荐书籍
  16. 词霸天下---136 词根 【-imag- = -imit- 图像 】仅供学习使用
  17. 量子计算机用什么传导信息,量子是如何传递信息的?
  18. 魅族手机设置输出log
  19. Java生鲜电商平台-技术方案与文档下载
  20. 一篇解决:Ubuntu安装配置、软件、工具、快捷键

热门文章

  1. R语言对dataframe的行数据进行排序(Ordering rows)实战:使用R原生方法、data.table、dplyr等方案
  2. pandas使用isin函数和all函数判断dataframe特定数列中是否包含指定列表中的全部内容
  3. R语言基于Bagging算法(融合多个决策树)构建集成学习Bagging分类模型、并评估模型在测试集和训练集上的分类效果(accuray、F1、偏差Deviance):Bagging算法与随机森林对比
  4. R语言stringr包str_ends函数、str_starts函数起始、结束字符串判断实战
  5. R语言names函数获取或者设置数据对象名称实战
  6. Apriori算法、FP-Growth算法、顺序分析、PrefixSpan算法
  7. R语言bioconductor包—maftools的使用
  8. wget,curl 下载文件
  9. PacBio Sequel概述
  10. Pacbio 数据相关的几个重要概念