獲取介面引數我寫了七層 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
- 介面測試--獲取動態引數進階
- gofiber: 獲取引數Go
- JavaScript—獲取引數(23)JavaScript
- js獲取url傳遞引數,js獲取url?號後面的引數JS
- URL引數獲取/轉碼
- 獲取url上的引數
- Laravel request 獲取路由引數Laravel路由
- HttpServletRequest獲取header引數 signHTTPServletHeader
- 七 while迴圈語句While
- js實現獲取URL引數JS
- C#獲取URL引數值C#
- go語言獲取外部引數Go
- vue獲取位址列引數方法Vue
- http獲取get引數過濾HTTP
- React router 4 獲取路由引數,跨頁面引數React路由
- let const快取for迴圈的中間變數快取變數
- 如何從context-param獲取引數?Context
- Spring LocalVariableTableParameterNameDiscoverer獲取方法的引數名Spring
- C# 解析獲取Url引數值C#
- JavaScript 獲取 url 傳遞引數值JavaScript
- 表單請求獲取路由引數路由
- 常用指令碼:獲取隱含引數指令碼
- SOLIDWORKS如何獲取模型中的引數Solid模型
- SpringBoot 攔截器獲取 @RequestBody 引數Spring Boot
- Java 獲取系統各項引數Java
- [寫了一個玩具] 引數注入
- 介面測試的獲取token變數變數
- java讀取excel層級結構的遞迴寫法JavaExcel遞迴
- Vue mock模擬獲取資料 迴圈遍歷檢視VueMock
- 網頁重寫字串val()方法的擴充套件獲取安全引數String網頁字串套件
- python獲取命令列引數的程式碼Python命令列
- react獲取當前頁面的url引數React
- JavaScript獲取url傳遞的引數值JavaScript
- springboot如何優雅的獲取前端引數Spring Boot前端
- shell 怎麼獲取引數的長度
- 如何通過WinDbg獲取方法引數值
- JAVA多層迴圈裡面怎麼一個break直接跳出到最外層迴圈位置Java