接口自动化之测试用例设计(一)

JMeter第一阶段打卡结束之后,大家可以拿公司的接口试试手,完成接口测试。

有个很重要的点要注意:JMeter只是执行用例或者是产生压力的工具。至于用例怎么写,产生多少的压力,还是要看使用者的。

  • 举个例子:就像一把菜刀,在大厨手里,可以花式雕刻,什么菜对应什么刀工,炒土豆丝就是土豆丝,炖土豆块就是土豆块;但是,同样的一把刀,到我们(我)手里,切出来的就是土豆条。
  • 工具,就是工具,主要还是看用的那个人怎么用。

1.什么是接口?

接口

代码里的话,一个接口其实就是一个函数,像下面这样的两个接口

//基于Python+flask

from flask import Flask
app = Flask(__name__)

@app.route('/')#接口为 /
def hello_world():
    return 'Hello, World!' #返回Hello, World

@app.route('/login', methods=['POST', 'GET'])#接口为login,请求方法为:post,get
def login():
    error = None
    if request.method == 'POST':
        if valid_login(request.form['username'],
                       request.form['password']):
            return log_the_user_in(request.form['username'])
        else:
            error = 'Invalid username/password'
 
    return render_template('login.html', error=error)
    
if __name__ == '__main__':
    app.run("127.0.0.1")

2.针对输入参数

对于接口来说,输入就是入参。常见参数类型有:数值,字符串,数组,多维数组等

2.1数值

  • 等价类

在编写功能用例的时候,等价类是十分常用的一种方法,这个"价",不知道大家怎么理解?

1. int
2. float
3. double
  • 边界值
  • 遍历
  • 可能存在的问题
1.传入非特定类型程序异常退出
2.超长字符没有进行异常处理,导致存储,显示等异常
3.其他用户可见的敏感数据

2.2 字符串

  • 等价类
1. String
2. ....
  • 边界值
  • 遍历

2.3 数组

  • 个数
例如:权限以数组存储,数组上限30,但是有第31个权限
  • 内容
1.数组内容异常处理
2.重复的元素
3.元素为0
  • 可能导致的异常
1.元素个数为0,异常退出
2.重复数据没处理,结果异常

2.4多维数组

经常会遇到数组嵌套,JSON串嵌套的情况,一层一层测试

3.针对输出结果

  • 针对输出结果设计测试,其实就是针对接口返回的结果进行分析测试。

3.1 业务结果

这个就根据具体的业务,具体分析输出结果,然后进行写用例

3.2 错误处理

  • 错误码
  • 错误异常返回结果有很多情况很多值,根据返回的错误码和错误类型进行比对,根据业务需要设计测试用例
  • 异常处理
    我们不一定能够覆盖所有的错误码,所以常见的问题就是:
  • 1.错误处理不足,导致前端异常
    
  • 2.错误提示处理不当,导致用户看到错误码。(什么SQL异常,error等)
    
  • 3.错误提示不当,用户看了提示不知道哪里出了问题,怎么解决
    

4.针对接口逻辑

针对接口逻辑,也就是场景型接口。

4.1 数值限制

例如:电商类设计了一个活动,用户积分800分的用户可以参与。那么,活动的一些接口就有了一个800分的限制

4.2 状态限制

例如:电商类产品,用户登录之后才可以购买商品。那么,下单的一些接口就有了一个用户登录限制

4.3 权限限制

例如:一些OA类产品,管理员对应的权限操作,普通用户对应的操作,业务流程对应的操作等,那么,这些接口就有了一个对应的权限限制

5. 针对接口超时

  • 没有进行超时处理,整个流程阻塞
  • 超时后,又收到接口返回,导致逻辑出现错乱

6.针对废弃接口

  • 因为需求变更,暂时不用,没有及时删除
  • 新老版本更替,废弃接口没有检查,对应服务没有更新

7.针对接口合理性

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