python - 介面自動化 - Requests 除錯指令碼綜合實戰
阿新 • • 發佈:2021-12-17
學校管理系統介面測試基本流
# 引入模組requests與random import requests import random import json # 管理系統父路徑 SMS_Url = "http://192.168.233.128:8080/recruit.students/school/manage" ## 登入系統 # 學校管理系統登入頁路徑 SMS_LoginUrl = "http://192.168.233.128:8080/recruit.students/login/in" # 登入get請求的params引數 LoginParams = { "account": "admin", "pwd": "660B8D2D5359FF6F94F8D3345698F88C" } # 使用requests模組的Session方法構建一個用於保持登入狀態的SMS_LoginKeep例項物件 SMS_LoginKeep = requests.Session() # 構建,傳送登入get請求 SMS_LoginKeep.get(url = SMS_LoginUrl, params = LoginParams) ## 新建學校 # 管理系統新建學校子路徑 SMS_AddUrl = "/addSchoolInfo" # 一個隨機學校名和一個隨機備註 SchoolNameRandom = random.randint(1, 1000000000) RemarkRandom = random.randint(1, 100000) # 新建學校post請求的body引數 SchoolAddBody = { "schoolName": SchoolNameRandom, "listSchoolType[0].id": 2, "canRecruit": 1, "remark": RemarkRandom } # 構建,傳送新建學校post請求 RespondOfSchoolAdd = SMS_LoginKeep.post(url = SMS_Url + SMS_AddUrl, data = SchoolAddBody) # 新建學校後響應新學校資訊的json轉為字典儲存在NewSchoolInfoDict NewSchoolInfoDict = RespondOfSchoolAdd.json() ## 禁用學校 # 管理系統禁用學校子路徑 SMS_EnableOrDisableUrl = "/enableOrDisableSchool" # 禁用學校post請求的body引數 SchoolDisableBody = [{"id": NewSchoolInfoDict["data"]["laccount"], "disable": 0, "schoolId": NewSchoolInfoDict["data"]["id"]}] # 構建,傳送啟用或禁用學校的post請求 SMS_EnableOrDisable = SMS_LoginKeep.post(url = SMS_Url + SMS_EnableOrDisableUrl, json = SchoolDisableBody) print(SMS_EnableOrDisable.text) ## 設定學生錄入時間 # 設定學生錄入時間子路徑 以下未寫 SMS_SetStudentsRecruitTimeUrl = "/setStudentRecruitTime" # 更改學生錄入時間 # 更改學校為自主招生 # SMS_SetSchoolself = SMS_LoginKeep.post(url = )
shop商場 專案主要流程
# 引入requests模組 import requests # Url:登入請求路徑 Url = "http://192.168.233.128/xiaoqiangshop/user.php" # LoginBody:登入的body引數 LoginBody = { "username": "admin", "password": "test123", "remember": "1", "act": "act_login", "back_act": "http%3A%2F%2F192.168.233.128%2Fxiaoqiangshop%2Findex.php&submit=" } # GoodsUrl商品查詢路徑 GoodsUrl = "http://192.168.233.128/xiaoqiangshop/goods.php" # 查詢id為134的商品的params引數 GoodNum134 = { "id": "134" } # 加入購物車步驟的路徑 AddToCartAndCheck = "http://192.168.233.128/xiaoqiangshop/flow.php" # 加入購物車的params引數 ParAddInCart = { "step": "add_to_cart" } # 商品id為134加入購物車的body引數 AddToCart134 = { "goods": '{"quick": 1, "spec": [], "goods_id": 134, "number": "1", "parent": 0}' } # 檢視購物車的params引數 Cart = { "step": "cart" } # 結算中心的params引數 Check = { "step": "checkout" } # 提交訂單的params引數 Done = { "step": "done" } # 提交訂單的body引數 DoneBody = { "shipping": 1, "payment": 1, "bonus": 0, "bonus_sn": [], "postscript": [], "how_oos": 0, "x": 50, "y": 40, "step": "done" } # 使用requests模組中的Session方法構建一個Session物件,命名為RequestSession,使用RequestSession可以保持登入狀態 RequestSession = requests.Session() # 使用RequestSession物件的post方法向登入頁傳送post請求 RequestSession.post(url = Url, data = LoginBody) # 保持登入狀態下使用get方法取得指定商品id的商品展示頁 RequestSession.get(url=GoodsUrl, params=GoodNum134) # 將商品id為134的商品加入購物車 RequestSession.post(url = AddToCartAndCheck, params = ParAddInCart, data = AddToCart134) # 進入結算中心 RequestSession.get(url = AddToCartAndCheck, params = Check) # 提交訂單 RequestSession.post(url=AddToCartAndCheck, params=Done, data = DoneBody)