• 0
  • 0
分享
  • 这些测试中的奇怪问题你见过吗?——软件测试圈
  • 曼倩诙谐 2021-04-30 10:24:21 字数 1455 阅读 1201 收藏 0

  测试过程中,无论案例怎么设计、怎么执行,都需要测试人员有一定的敏感度去发现问题,测试人员的经验积累无论对于案例的设计、测试执行还是缺陷的发现都有很重要的意义,所以接下来我想给大家分享一些我自己在测试中遇到的经典或非经典场景。

  1 需求了解不到位

  有些问题其实并不算很难或很复杂,只是需要测试人员在测试前仔细阅读需求,明确需求要求实现的功能、需求给定的请求和应答报文字段、需求阐明的业务规则,所有需求里明确写了的内容在测试中应当务必保证覆盖。我在测试中遇到的问题有返回报文字段和需求不一致,业务规则要求取值范围大于等于固定值,在实现中变成了大于固定值等等情况。相关场景多是疏忽没有仔细阅读需求所致,有时候是由于任务多次分解,最后一个接收到代码任务的人没有接触到需求直接完成了代码工作,这种场景就需要测试人员足够细致耐心,如果测试环节无法发现,很有可能相关问题就会逃逸到生产上,再次修复成本更高,甚至可能已经产生了负面影响。

  2 查询条件是否包含等于

  涉及到查询交易中查询条件如何设置需要认真按需求完成,例如上一个问题中提到过的内容。但是也有其他场景,这次遇到的并不是开发代码问题,而是我在测试中对代码逻辑没有充分了解所以将正常逻辑误判为缺陷,开发同事在拒绝缺陷后又解释了相关场景和逻辑,我认为还是很有意义的一种场景,可以写下来给测试小伙伴们参考。在某交易明细查询中,查询条件有一个是20位时间戳,格式例如:20210101102533760702,在查询过程中,当上送时间戳字段的时候,返回的是时间戳大于该值的结果,不包括等于该值的场景,原因是该交易一般取上一次返回的时间戳为查询条件进行续查,如包含等于的场景会导致数据出现重复。由此可见,是否需要包含等于需要视应用场景而定,避免按自己的理解想当然,同时,相关场景如果不确定或未事先沟通的话,最好充分了解后再确定处理方案。

  3 空格在交易中的影响

  空格分全角空格和半角空格,我测试中遇到过两种情况。一种是一致性校验的过程中,一方数据混入了空格,需要额外进行处理;另外是在查询过程中,查询条件输入的值包含空格,需要考虑是否进行处理。以上两种情形,对空格的处置需要考虑多种情况,全角空格、半角空格、空格在数值前(例:  20210101)、空格在数值中(例:2020  0101)、空格在数值末尾(例:20210101  ),其中,空格在数值末尾和半角空格的场景相对比较常见和易于处理,另外几种场景则需要根据需求及应用场景充分考虑、适当处置,避免影响交易执行或交易成功率。

  4 数据校验的适当性

  在用户注册交易中,个人用户常常需要使用身份证号进行注册,通常大家默认身份证号为18位数字,第7位到第14位为8位年月日,但是实际中,有可能出现15位身份证号码,如果按18位且7-14位为日期进行校验,有可能拦住部分用户注册,导致用户注册失败。因此,在类似的数据校验中,校验规则应当松紧适宜,如果输入要素规则明确,可以适当细化校验规则,在输入的要素规则不明确的前提下,校验规则不应过于具体,以保证数据校验的适当性,避免出现上述问题。

  以上是我在近期的功能测试工作中遇到的我认为值得分享的事例。测试工作需要我们常常保持警惕,细致耐心完成工作任务,同时,在未完全明确的场景中,充分沟通也是非常重要的,提高事前沟通成本总好过大量精力花在时候修改上,沟通成本并不会减少,还要承担重复劳动修改代码的成本。


作者:邵永恰   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、前言我们创建函数都只是为我们做一些事,做完了就结束。但实际上,有时还需要对事情的结果进行获取。这类似于主管向下级职员下达命令,职员去做,最后需要将结果报告给主管,为函数设置返回值的作用就是将函数的处理结果返回给调用它的程序。二、返回值语法格式在Python中,可以在函数体内使用return 语句为函数指定返回值。该返回值可以是任意类型,并且无论return语句出现在函数的什么位置,只要得到执行,就会直接结束函数的执行。return 语句的语法格式如下:result = return [value]参数说明:result:用于保存返回结果,如果是一个值,那么re...
            1 1 1789
            分享
          • 敏捷开发迭代速度快?开发完上线之后找不到相应人员?下一轮优化时不知从何下手?相信大家在平时的工作中都遇到过相关的问题,究其原因是没有留足够的时间进行相关文档的沉淀和归档,导致后来人员对于之前的项目不够熟悉,不知道如何下手。所谓好记性不如烂笔头,结束一个项目时抽空整理出相关的特点,给后来人一个大概的论述,相信能很好的发挥承上启下的作用。很感谢我的上一任上司,她督促我们每一个版本都需要养成总结文档的习惯,写功能说明文档的习惯也是从这个时候慢慢继承下来的。这里说的继承者是指——功能说明文档。每个专项开展测试,有新功能的时候都会测的热火朝天,但是测试结束之后,这个功能交接给另外的同学时或者合并到系统项...
            8 5 7353
            分享
          •   好多人都觉得测试经理已经不进行实际的测试工作了,是不是只是管管人就行了?  当然不是了,下面我们就来探讨一下测试经理到底每天都在干什么。  需求分析  作为测试经理来讲,必须对需求了解的非常透彻,那么在拿到一个需求或者项目的时候,通过需求分析报告,能准确的提出项目的可行性建议以及可能存在的风险。  避免在项目进行过程中发现了方向性的问题或者无法跨越的鸿沟。  编写测试计划  拿到测试需求后,最主要的工作不是马上就开始测试,而是需要根据提测的功能,合理的分配测试人员,编写可行性的测试计划,以保证项目或者需求能按时的完成。  用例评审  在测试人员根据需求编写完测试用例之后,测试经理应该组织相...
            0 0 1745
            分享
          •   咳咳,上回书说到职场江湖中潜伏的“抢功精”,他们如同武侠小说里的摘桃派,悄无声息间就将你的辛苦结晶据为己有。今天,咱们就继续来聊一聊小灰的故事,看看面对这类“武林高手”,该如何施展招数,捍卫自己的劳动成果。  小灰,那个朴实无华的测试员,熬过无数个日夜,自主研发了一款能大幅提升工作效率的小工具。谁知半路杀出个程咬金,小灰的同事小Q竟然借机制作了一套汇报PPT,把这项成果当作自己的作品,成功打动了领导的心。这便是各大公司中常出现的“抢功精”典型,他们目光犀利,出手迅捷,擅长于在你疏忽之时,不动声色地掠走你的战绩。  此刻,摆在小灰面前的,是五条应对之策:  1.默默吞下委屈,任凭他人逍遥法外...
            0 0 324
            分享
          • 关于PandasPandas中的数据结构(1)Series:一维数组系列,也称序列;(2)DataFrame:二维的表格型数据结构;(3)Panel:三维数组。数据类型1.Logical(逻辑型)2. Numeric(数值型)3. Character(字符型)数据结构1.Series使用方法如下;Series([数据1,数据2,...],index=[索引1,索引2,...])例如:from pandas import Series X=Series(['a',2,'螃蟹'],index=[1,2,3]) X X[3]#访问inde...
            1 1 1708
            分享
      • 51testing软件测试圈微信