天天看点

python接口测试jason_Python接口测试框架实例

1 / 1

Python

的接口测试框架实例

分析

接口是基于

HTTP

协议的,

那么说白了,

就是发起

HTTP

请求就行了,

对于

Python

来说简直就是小菜一碟。直接使用

requests

就可以很轻松的完成任务。

架构

整个框架

是比较小的,涉及的东西也比较少,只要分清楚几个模块的功能就行了。

上面是一个

接口测试

的完整流程。只要一步一步的走下来就行了,并不是很难。

数据源

数据源我使用的是

JSON

来保存,当然,比较广泛的是使用

Excel

来保存,用

JSON

来保存是

因为

JSON

用起来比较方便,懒得去读取

Excel

了,

Python

JSON

的支持是非常友好的。当

然这个就看个人喜好了。

{"TestId": "testcase004"

"Method": "post"

"Title": "

单独推送消

"

"Desc": "

单独推送消息

"

"Url": "http://xxx.xxx.xxx.xx"

"InputArg": {"action": "44803"

"account": "1865998xxxx"

"uniqueid": "00D7C889-06A0-426E-BAB1-5741A1192038"

"title": "

测试测试

"

"summary": "

豆豆豆

"

"message": "12345"

"msgtype": "25"

"menuid":

"203"}

"Result": {"errorno": "0"}}

示例如上面代码所示,可以根据个人的业务需要进行调

整。

发送请求

发送请求就很简单了,用

requests

模块,然后从

JSON

中读取发送的参

数,

post

get

或者其他。由于要生成测试报告,那么发送的数据需要做一下记录,我选择用

txt

文本来作为记录的容器。

f = file("case.json")testData = json.load(f)f.close()def

sendData(testData

num):payload = {}#

json

中获取发送参数

for x in

testData[num]['InputArg'].items():payload[x[0]] = x[1]with open('leftside.txt'

'a+') as

f:f.write(testData[num]['TestId'])f.write('-')f.write(testData[num]['Title'])f.write('n')#

发送

请求

data = requests.get(testData[num]['Url']

params=payload)r = data.json()