介面自動化之 資料庫操作

2022-07-02 14:42:08 字數 2605 閱讀 8711

如果是對於查詢介面,可以驗證response是否符合預期就行;

如果是對於增、刪、改介面,需要驗證db

import

pymssql

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()

return

json.dumps(result)

if__name__ == '

__main__

': operadb =operationdb() result = operadb.search("

select * from [shhdsn].[dbo].[dsn_admin]")

print

(result)

print(type(result))

也可以將資料庫配置資料放到config中讀取

case.config

[db]

db_config=

讀取配置檔案 read_config.py

import

configparser

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 pymssql

import 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...