zoukankan      html  css  js  c++  java
  • python自动化适应多接口的断言怎么做?

    最近做的接口自动化,遇到了很多模块的接口,返回的断言不太相同,在放在unnitest单元测试框架+ddt数据驱动,做参数时,发现不能只通过一个方式进行断言,那么,要怎么做才能做到适配当前所有接口的断言呢?

    先举个例子,大部分接口返回的内容,都是json格式,都可以通过相应的key值,进行取值

    1. 登录接口,登录成功,会返回一个code

    {

      "code":0,

      "msg": "登录成功”

    }

    2.第二个,新增一样商品的接口的返回报文:

    {

      "errcode":0,

      "msg": "新增成功”

      .省略其他内容......

    }

    可以通过例子,看到这两个对于成功,返回的key值,已经不同了

    断言方式:

    1. 第一种,对于返回报文简单的,可以采取完全断言

    2. 第二种,对于接口返回的内容负责,只能抽取关键的进行断言

    实际情况:

    目前做的接口,就存在两个情况,要同时兼容这两种情况,进行断言检验

    目前的实施方案:

    1. 用例数据采用excel进行管理,会有一列校验类型来做区分,分别传入0或具体的key值来做判断,是做完全断言还是取其中的来做断言

    2. 对于部分断言,采用的是和jsonpath结合来做,和xpath类似,比较简单易用,比如要取登录成功的code的jsonpath,可以写成是$..code,jsonpath的详细用法,可参考百度。

    推荐一篇文件,关于断言:http://testingpai.com/article/1595507145193

    总结:

    有想法是件好事,没想法,完全下不了手,不妨,多些想法,实现适用的方法。

  • 相关阅读:
    Spark SQL 初步
    Android开展:ADT+Eclipse使用错误:Text editor does not have a document provider
    android 98 MediaPlayer+SurfaceView播放视频
    android97 播放音频 有进度条控制
    android96 内存创建图片副本,画画板
    Android记录6--ViewPage+Fragment的使用例子
    android95 缩放加载大图片
    android94 样式和主题
    android93 进程优先级补充
    android92 aidl远程进程通信
  • 原文地址:https://www.cnblogs.com/cuitang/p/14819994.html
Copyright © 2011-2022 走看看