框架到這裡已經很不錯了,後面就需要各位自己去完善了。比如有時候請求需要加密、簽名,還有一些支援方法,可以在utils中建個support.py放進去。在utils中建立乙個support.py檔案,裡面可以放需要的一些支援方法,我們示例乙個加密和簽名的方法:
"""一些支援方法,比如加密"""
import hashlib
from utils.log import logger
class
encrypterror
(exception):
pass
defsign
(sign_dict, private_key=none, encrypt_way='md5'):
"""傳入待簽名的字典,返回簽名後字串
1.字典排序
2.拼接,用&連線,最後拼接上私鑰
3.md5加密"""
dict_keys = sign_dict.keys()
dict_keys.sort()
string = ''
for key in dict_keys:
if sign_dict[key] is
none:
pass
else:
string += '=&'.format(key, sign_dict[key])
string = string[0:len(string) - 1]
string = string.replace(' ', '')
return encrypt(string, salt=private_key, encrypt_way=encrypt_way)
defencrypt
(string, salt='', encrypt_way='md5'):
u"""根據輸入的string與加密鹽,按照encrypt方式進行加密,並返回加密後的字串"""
string += salt
if encrypt_way.upper() == 'md5':
hash_string = hashlib.md5()
elif encrypt_way.upper() == 'sha1':
hash_string = hashlib.sha1()
else:
logger.exception(encrypterror('請輸入正確的加密方式,目前僅支援 md5 或 sha1'))
return
false
hash_string.update(string.encode())
return hash_string.hexdigest()
if __name__ == '__main__':
print(encrypt('100000307111111'))
根據你實際情況的不同,在其中新增其他支援方法。 怎樣從0開始搭建乙個測試框架 3 引數化
這一步我們需要用到python庫xlrd 我們已經把配置分離,並新增了log,接下來我們應該嘗試著進行資料分離,進行引數化了。我們修改file reader.py檔案,新增excelreader類,實現讀取excel內容的功能 檔案讀取。yamlreader讀取yaml檔案,excelreader讀...
怎樣從0開始搭建乙個測試框架 10 資料生成器
有時候介面或ui上傳入的資料需要符合指定的格式,我們在引數化的過程中又不願意在excel中一遍遍去構造這樣的資料,這時我們可以加入生成器來為我們產生符合某些固定格式的資料。這裡我推薦乙個挺有意思的庫,faker,能夠為你產生各種假資料 別忘了在readme.md中添上你要用的庫。在utils中建立乙...
從0開始搭建基礎後台框架
很多人會想tp5後台的通用框架很多,為何還要自己去造輪子呢,用著不香嗎?我想說的是不香,每乙個框架的ui包括裡面的外掛程式呢,引用的都不是很全面,有的過於臃腫,有的過於簡單,反正不滿意,那麼我就只能自己動手造了,這個框架呢,目的就是為了以後公司開發產品方便,方便自己去動手做一些自己喜歡的東西 框架採...