Python介面對json串的處理

2021-07-22 03:20:59 字數 2388 閱讀 2263

最近學習python介面測試,對於介面測試完全小白。大概一周的學習成果進行總結。

1.介面測試:

目前涉及到的只是對簡單單一的介面進行引數傳遞,得到返回自。

2.關於各種概念:

2.1 http請求包含post方法、get方法。通過json串或xml傳遞,但後者未做研究

2.2 get: 瀏覽器告訴伺服器,只獲取頁面資訊,並傳送給我。

2.3 post:瀏覽器告訴伺服器想法不一些資訊到某個**,伺服器需確保資料被儲存且只儲存一次。

2.4 head:瀏覽器告訴伺服器,給我訊息頭,像get那樣被接收。

2.5 python對資料的處理模組可以使用urllib、urllib2模組或requests模組

3.urllib、urllib2例項

#coding=utf_8

import urllib2,urllib

import json

import unittest,time,re

class

apitest

():"""

介面測試類

"""defapi_test

(self, method, url, getparams, postparams):

str1 = ''

#get方法呼叫

if method == 'get':

if getparams != "":

for x in getparams:

str1 = str1 + x + '=' + urllib2.quote(str(getparams.get(x)))

if len(getparams) > 2:

str1 = str1 + "&"

url = url + "&" + str1

result = urllib2.urlopen(url).read()

#post方法呼叫

if method=='post':

if postparams != "":

data = urllib.urlencode(postparams)

req = urllib2.request(data)

response = urllib2.urlopen(req)

result = response.read()

#result轉為json資料

jsdata = json.loads(result)

return jsdata

class

apigetres

(unittest.testcase):

deftest_call

(self):

api = apitest()

getparams=

postparams=''

data = api.api_test('get','',getparams,postparams)

print data

if (data['errno']!=""):

self.assertequal(0, data['errno'])

print

"介面 deal/list-------------ok!"

else:

print

"介面 deal/list-------------failure!"

self.assertequal(0, data['errno'])

if __name__ == '__main__':

unittest.main()

requests例項

#coding=utf_8

import requests

import json

import unittest,time,re

class

apigetadlis

(unittest.testcase):

deftest_call

(self):

github_url=''

data = json.dumps()

resp = requests.post(github_url,data)

print resp.json

#if (data['errno']!=''):

# self.assertequal(0, data['errno'])

# print"介面 deal/list-------------ok!"

#else:

# print"介面 deal/list-------------failure!"

# self.assertequal(0, data['errno'])

粗略了解,待深入學習

介面測試中使用json串對比

背景 在介面測試中,一般返回都是json字串,同乙個介面隨著開發 的改動或者相關業務需求的變更,需要反覆測試多次,但使用的case都是一樣的,反覆的人工比對效率低下還容易出錯,於是想著如果能實現兩個json字串的自動比對的話,豈不是可以解放很多的人工比對工作,哈哈哈哈哈 於是乎,想做乙個懶人的自己終...

python介面測試之json模組的使用

json.dumps json.loads json.dump json.load 一 json.dumps 將python字典型別轉換成json物件 import json python 字典型別轉換為 json 物件 data json str json.dumps data print pyt...

python介面測試3 JSON格式

什麼是json?一種輕量級的資料交換格式。它獨立於語言和平台,json解析器和json庫支援不同的程式語言。json具有自我描述性,很容易理解。資料格式 介面最常見的資料格式就是json,現在我們來實踐一下如何開發json格式的api介面 from flask import flask,reques...