如果是對於查詢介面,可以驗證response是否符合預期就行;
如果是對於增、刪、改介面,需要驗證db
importpymssql
import
json
class
operationdb:
def__init__
(self):
self.comn = pymssql.connect(server="
172.16.20.61
", user="
sa", password="
sa", database="
shhdsn
",as_dict=true) #
獲取連線
self.cur = self.comn.cursor() #
獲取游標
defsearch(self,sql):
self.cur.execute(sql)
result =self.cur.fetchall()
#關閉游標self.cur.close()
#關閉連線
self.comn.close()
returnjson.dumps(result)
if__name__ == '
__main__
': operadb =operationdb() result = operadb.search("
select * from [shhdsn].[dbo].[dsn_admin]")
(result)
print(type(result))
也可以將資料庫配置資料放到config中讀取
case.config
[db]db_config=
讀取配置檔案 read_config.py
importconfigparser
from util.project_path import *
class
readconfig:
def read_config(self,config_path,section=none,option =none):
config =configparser.configparser()
config.read(config_path,encoding="
utf-8")
return
config[section][option]
if__name__ == '
__main__':
print(readconfig().read_config(config_path,"
db","
db_config
"))
operation_db.py
import pymssqlimport json
from util.read_config import readconfig
from util.project_path import *
class operationdb:
def __init__(self):
# self.comn = pymssql.connect(server="172.16.20.61", user="sa", password="sa", database="shhdsn",as_dict=true) # 獲取連線
# self.cur = self.comn.cursor() # 獲取游標
#讀取資料庫的配置檔案
db_config = eval(readconfig().read_config(config_path,"db","db_config"))
#獲取連線
self.comn = pymssql.connect(**db_config)
#獲取游標
self.cur = self.comn.cursor()
def search(self,sql,state = "all"): #查詢只有乙個結果用fetchone,返回的是乙個元祖,多個結果用fetchall,返回的是巢狀元祖的 列表
#執行查詢語句
self.cur.execute(sql)
if state == 1:
result = self.cur.fetchone()
else:
result = self.cur.fetchall()
#關閉游標
self.cur.close()
#關閉連線
self.comn.close()
return json.dumps(result)
if __name__ == '__main__':
operadb = operationdb()
result = operadb.search("select * from [shhdsn].[dbo].[dsn_admin]")
print(result)
print(type(result))
python介面自動化資料庫連線
ps.資料庫連線引數可以配置在conf檔案中,資料庫連線需要做異常防護 另分析連線資料庫之後是否需要清除表資料 pymysql.connect 函式引數說明 安裝pymysql pip install pymysql 實現步驟 1.建立資料庫連線 db pymysql.connect 2.建立游標 ...
介面自動化之 exce xlrdl基本操作
import xlrd defread excel 開啟檔案 sheet xlrd.open workbook r d jiekou dataconfig case1.xls 獲取所有sheet print sheet.sheet names sheet2 name sheet.sheet name...
介面自動化之unittest ddt
usr bin python3 coding utf 8 time 2018 12 10 15 03 author yosef 夜雨聲煩 email wurz529 foxmail.com file learnddt.py software pycharm community edition imp...