接口测试中的业务逻辑

摘自http://www.51testing.com/html/32/n-4422132.html

接口测试作为测试金字塔的第二层,有着低成本、高回报的优势。越来越多的人开始做接口测试,同时可以选择的工具、框架也越来越多。测试人员甚至不用操作app或平台,通过接口就可以测试不同场景,并测试完全流程,同时接口测试也给造数据也带来了方便。

  但是,这就是接口测试了吗?当然不是。完整的接口测试不仅要校验接口能否调通,还要校验各种组合场景、异常场景、输入参数合法性有效性和边界值、接口安全、接口性能等。大部分同学的接口测试普遍存在两个问题,一是场景太浅,另一个是断言不足。前者造成测试范围有局限,后者是对测试结果校验不足。只校验了响应码的接口测试是无意义的,也不利于持续集成和持续部署。

那么接口测试用例如何设计呢?从输入、处理逻辑、输出三部分入手。输入就是各种参数类型及组合的校验,如对数值类型,通过负数、0、小数、99999999999999999等,前端可能过滤掉了这些输入,但是在接口层还是要做校验,特别是对金额来说。对输入的测试可以用等价类、边界值、判定表、因果图等方法来分析。对于输出,则是要覆盖各种响应吗和返回结果,正常的、异常的、特殊的、失败的情况等等。

我想讨论的,是第二部分,业务逻辑。大家都会对接口做正常场景的测试,也会做参数校验的测试,但是不知道如何结合业务做接口测试。我们知道在业务流程中,是用户/后台的一些操作,引起数据或者状态的改变,然后引申出各个检查点。比如用户还款,还清了最后一期,那么这个操作的结果需要列出来:比如更新应收台账、更新回款记录、更新还款状态、恢复额度;我们的检查点也要列出来:在客户端检查待还列表、检查提现记录、检查卡片状态,以及在后台检查各个表的数据。这些就是可以提供给接口测试的。因为业务流程有很多条线,场景不仅只有一个主流程,这个还清最后一笔就是一个场景,除了要校验接口响应中的结果,还要到数据库校验各个值,同时可以通过其它接口,如再次调用还款接口会还款失败,调用额度查看接口额度已回恢复,查看待还列表接口状态为已还清。要在接口测试中实现比较全的场景和校验点,需要提前把checklist列出来,详细的测试用例可以不需要,但是checklist一定要有。总结起来就是通过响应结果进行校验、到数据库进行校验、通过其它接口校验。

接口测试的业务场景如何梳理呢?在app或者平台上可能限制了我们的操作,但是接口不同,只要我们愿意,我们可以设计各种顺序、各种次数的场景,当然都是要和业务逻辑有关系的。根据状态不同,我们可以测试当用户处于未登录、未绑卡、未借款状态的时候的一些操作;根据操作路径不同,我们可以让用户通过微信、支付宝、银行卡支付;根据业务规则不同,可以测试不可部分还款/提前还款的产品可否进行部分还款/提前还款、无该优惠的用户群可否使用该优惠券;根据操作次数不同,我们可以测试用户重复绑卡、重复提现、重复还款;根据操作顺序不同,我们可以测试先收到优惠券再还款、还款中收到优惠券;根据数据不同,可以设计不同期数、不同金额的提现方式。同时在接口中一样也可以用场景插入、场景替换、场景删除、场景重复、数据替换的方式设计用例。而针对异常场景,用户权限不允许的操作、状态不允许的操作、数据不允许的操作、极限条件下的操作,都可以用上面的方式通过接口进行测试。

  把重要的接口测试用例通过脚本实现,不仅可以提高回归效率,减少版本优化所需要的测试时间;接入持续集成持续部署,还可以起到监控的作用,同时可以让优质的代码更快上线。把重复性的工作通过自动化的方式实现,我们才能有更多的时间去做探索性的测试和其它专项测试。当然接口测试维护成本还是需要的,但和UI自动化相比已经是非常低了。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容