配置模組引入,介面自動化框架模型搭建

2022-05-11 14:00:35 字數 2436 閱讀 2559

需求背景:

進行自動化測試的時候會有很多的設定常量需要操作。

比如 baseurl,db連線資料,測試用使用者名稱,管理員賬號,token,auth之類

比較好的方式是使用乙個靜態檔案儲存下來,編寫方法固定讀取

涉及第三方庫 configparser.configparser

conf  = configparser()

conf.read("filename.ini",encoding='utf-8')

#方法1 get: 讀取的所有內容都會當成字串來處理

res = conf.get(『log』,『filename』)

print(res)

#方法二 getint 專門用來讀取數值型別的資料 int

res = conf.getint("mysql",'port')

#方法三 getfloat 專門用來讀取浮點數 float

res3 = conf.getfloat("mysql","n")

#方法四 getboolean 專門用來讀布林值 false false都支援

res4 = conf.getboolean()

配置檔案內部編寫格式

[log]

level = debug

fh_level = warning

filename = all.log

sh_level = debug

[mysql]

host = 127.0.0.1

port = 3306

n = 17.01

b = 89

b1 = true

b2 = false

b3 = true

b4 = false

addicated= 阿迪

dict1 =

第一步建立乙個配置檔案解析器物件

conf = configparser()

第二 將配置檔案讀取搭配配置檔案解析器物件中

conf.read('配置檔案',encoding='utf-8')

第三 配置檔案內容寫入

conf.write(fp=open("lemon01.ini", "w", encoding="utf-8"))

from configparser import configparser

class handleconfig(configparser):

"""配置檔案解析器類的封裝"""

def __init__(self, filename):

super().__init__()

self.read(filename, encoding="utf8")

conf = handleconfig("config.ini")

res = conf.get("mysql", "port")

print(res)

此處只記述讀取,yaml型別檔案做測試用例進行資料驅動留作後面更新內容。

import yaml

# yaml格式檔案的操作模組: pyyaml

# 安裝命令: pip install pyyaml

with open("lemon.yaml", "r", encoding="utf-8") as f:

file = yaml.load(f, loader=yaml.fullloader)

print(file)

搭建自動化測試框架首先要考慮好技術的選型,

從幾個大的層面來去構想需要準備哪些模組,哪些功能。

舉個例子:

excel讀取 + ddt + unittest + log + beautifulreport/htmltestrunnerreport + jenkins

根據應用到的技術逐一分析最終成型的框架結構

--用例資料 xlsx 檔案

--excel操作模組

--日誌模組

--ddt資料驅動模組

--測試用例模組

--測試執行程式入口檔案(啟動檔案

輸出日誌記錄檔案

測試報告檔案

之後針對專案檔案,按功能做分層設計目錄,大致分為幾類

1,自己封裝的一些模組,common下儲存

2,測試用例模組,testcases儲存

3,使用到的第三方庫檔案 lib下儲存

4,測試報告檔案 reports

5,log記錄檔案

6,測試啟動入口  run_test.py

如圖所示,之後就可以愉快的編寫用例類實現了~

介面測試自動化框架彙總

前兩篇文章我們介紹了如何使用postman和curl手工執行介面測試用例,不過如果專案需要長期開發和維護的話,我們就需要開始考慮自動化測試了。自動化測試第一步就是框架選型。所以本篇將介紹目前主流的介面測試框架,以及它們各自的優缺點。名稱優點 缺點官網 postman newman 介面操作,容易上手...

介面自動化測試框架python requests

介面封裝 將介面封裝成物件,類似pageobject封裝 資料封裝 資料與 分離,資料存放在yaml檔案中 配置檔案 實現全域性配置 utils 其他功能封裝 測試用例 呼叫介面物件實現業務並斷言 requests pytest allure等 base api.py import requests...

介面自動化流程和框架

在專案前期開發階段會介入介面測試 首先是熟悉需求文件 測試組長會寫測試計畫 裡面有介面測試的計畫 在開發前期開發階段開發會逐步提供介面文件然後進行熟悉 再寫介面測試用例 再搭建測試環境 然後搭建介面自動化測試框架 再進行用例指令碼的開發 然後執行介面測試 提交bug 最後是指令碼的補充及維護 採用p...