python介面測試用例框架(3) Entity

2021-08-20 08:50:53 字數 1539 閱讀 8307

entity,實體,前面已經介紹過實體類了,這個模組的作用是資料層的獲取,簡而言之,從資料庫獲取資料組裝進入前面介紹的資料庫的實體類。

這個我給乙個查詢是一條記錄的例項,如果是list,依樣迴圈處理就行了,比較簡單。

首先匯入moudle模組

import moudle

class entity:

def get_info_by_keyid(self, keyid):

#底層查詢實現,sql_exec是我自己封裝的使用pymysql的fetchall()

data = component.common.sql_exec(

sqls="select * from where keyid='%s'".format("表名")

% keyid, dbname="庫名").execute()

# 通過object_indo把資料庫的格式裝換成關鍵字引數格式

parm = self.object_indo(data, "表名", "庫名")[0]

# to object

return moudle.minfo(**parm)

@staticmethod

def object_indo(data, table_name, dbname):

""":param data: 查詢的底層資料

:param table_name: 查詢的表名

:param dbname: 查詢的庫名

:return: 例項化model入參list

"""if data is none:

data = ((),)

head = common().sql_exec(

sqls="select column_name from columns where table_name = '%s' and table_schema = '%s';" % (table_name, dbname)

, dbname="information_schema").execute()

#資料轉換

info = {}

info_list =

for item in data:

data_list = list(item)

#資料庫格式處理

for i in range(len(head)):

if isinstance(data_list[i], datetime.datetime):

data_list[i] = data_list[i].strftime('%y-%m-%d %h:%m:%s')

if isinstance(data_list[i], decimal):

data_list[i] = float(data_list[i])

info[head[i][0]] = data_list[i]

return info_list

其實實現不重要,主要是用例搭建模組化的思想,對於用例中所有會獲取資料的地方都被集中到這裡統一管理,即使獲取乙個字段,不需要裝入實體類也是一樣的。用例要提高效率必須提高可復用性。

python介面測試用例框架(1) 指令碼框架

最近自己整理了乙份新的介面測試用例框架,之前是基於wcf服務,比較簡單,現在是基於.netcore和spring boot 實現的api,所以全是http https 請求。第一部分,先說一下整體的框架 業務模組資料夾 business 公用模組資料夾 common 公用模組 common 實體類 ...

介面測試用例

介面測試用例實際 設計思路 1 優先順序 針對所有介面 1 暴露在外面的介面,因為通常該介面會給第三方呼叫 2 供系統內部呼叫的核心功能介面 3 供系統內部呼叫非核心功能介面 2 優先順序 針對單個介面 1 正向用例優先測試,逆向用例次之 通常情況,非絕對 2 是否滿足前提條件 是否攜帶預設參值引數...

介面測試用例

請求結構 請求方法 支援 http get 方法傳送請求,這種方式下請求引數需要包含在請求的 url 中。支援 http post 方法傳送請求,這種方式下請求引數需要包含在請求的 body 中。字元編碼 請求及返回結果都使用utf 8字符集進行編碼。公共引數 名稱 是否必須 描述signature...