獲取介面引數我寫了七層 for 迴圈
業務邏輯
- 我們的系統查詢有級聯關係,必填輸入框有8個(下拉選擇式),選填另算,根據不同的維度會查到不同的資料
- 需要對查詢條件做遍歷,將查詢到的結果記錄下來(返回狀態碼、返回結果是否為空、返回不為空的結果判斷是否正確)
具體實現
- 根據級聯關係,將第一個下拉框的結果作為第二個下拉框的輸入···以此類推,遍歷了8個下拉框的內容,對內容進行全對偶的匹配,得到8個引數值作為一組測試用例,儲存至檔案,然後再讀取檔案獲取用例做資料驅動
程式碼邏輯
# 獲取引數
def get_data(host, file_name):
tru_file(file_name)
data = {}
factoryTypes = get_factoryType()
cutType = get_cutType()
data["cutType"] = cutType
for factotyType in factoryTypes:
data["factoryType"] = factotyType
ProductGroups = get_ProductGroup(host, factotyType)
stepGroups = get_StepGroup(host, factotyType)
for ProductGroup in ProductGroups:
data["productGroup"] = ProductGroup
productIDS = get_ProductID(host, factotyType, ProductGroup)
for productID in productIDS:
data["productId"] = productID
for stepGroup in stepGroups:
data["stepGroup"] = stepGroup
stepIds = get_StepId(host, factotyType, productID, stepGroup)
for stepID in stepIds:
data["stepId"] = stepID
ItemTypes = get_ItemType(host, factotyType, stepID)
for ItemType in ItemTypes:
data["itemType"] = ItemType
items = get_Item(host, factotyType, stepID, ItemType)
for item in items:
data["item"] = item["key"]
param = get_param(data)
with open(file_name, "a", encoding="utf-8") as f:
f.write(str(param) + "\n")
問題
- 程式碼屬實不好看,想要優化卻又不知道怎麼合理優化,請教下有沒有好的方法呢
相關文章
- 介面測試--獲取動態引數進階
- (七)Spring Boot Controller的請求引數獲取Spring BootController
- JavaScript—獲取引數(23)JavaScript
- 常用操作 / 獲取引數
- js獲取url引數JS
- jquery獲取url引數jQuery
- js獲取url傳遞引數,js獲取url?號後面的引數JS
- mybatis list作為引數 foreach迴圈MyBatis
- Laravel request 獲取路由引數Laravel路由
- oracle獲取隱含引數Oracle
- jQuery獲取url引數值jQuery
- Js獲取URL地址引數JS
- vue獲取位址列引數方法Vue
- http獲取get引數過濾HTTP
- js實現獲取URL引數JS
- C#獲取URL引數值C#
- go語言獲取外部引數Go
- javascript獲取location.href引數JavaScript
- js獲取位址列的引數JS
- 獲取Oracle隱含引數資訊Oracle
- 獲取oracle的隱含引數Oracle
- React router 4 獲取路由引數,跨頁面引數React路由
- Oracle引數檔案解析——引數檔案分析獲取Oracle
- cmake使用教程(七)-流程和迴圈
- js根據引數名獲取url上的引數值JS
- matlab之在迴圈中修改迴圈變數Matlab變數
- JavaScript 獲取 url 傳遞引數值JavaScript
- 表單請求獲取路由引數路由
- Java 獲取系統各項引數Java
- C# 解析獲取Url引數值C#
- 獲取url傳遞的引數值
- 常用指令碼:獲取隱含引數指令碼
- request的請求引數獲取方式
- 【轉】AngularJs $location獲取url引數AngularJS
- 獲取request中的查詢引數
- js獲取url地址中的引數JS
- as3獲取url地址的引數S3
- 介面測試的獲取token變數變數