最近學習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...