中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

千鋒教育招聘北京中文seo

千鋒教育招聘,北京中文seo,wordpress彈性搜索,wordpress英文導(dǎo)航模板下載【軟件測試行業(yè)現(xiàn)狀】2023年了你還敢學(xué)軟件測試?未來已寄..測試人該何去何從?【自動(dòng)化測試、測試開發(fā)、性能測試】 開篇 MeterSphere的數(shù)據(jù)源通過html頁面上傳后,需要將請求方式進(jìn)行拆分。 get接口的參數(shù),常以params的方式進(jìn)行傳…

【軟件測試行業(yè)現(xiàn)狀】2023年了你還敢學(xué)軟件測試?未來已寄..測試人該何去何從?【自動(dòng)化測試、測試開發(fā)、性能測試】

開篇
MeterSphere的數(shù)據(jù)源通過html頁面上傳后,需要將請求方式進(jìn)行拆分。

get接口的參數(shù),常以params的方式進(jìn)行傳參,也就是在url后帶上參數(shù)。

post接口一般是以json字符串的形式傳參,也有params方式進(jìn)行傳參的。而在MeterSphere里面,post可以使用它所自帶的jsonSchema的界面功能來定義參數(shù),也就是key-value的方式。也可以手寫json。這里我們以jsonSchema的方式進(jìn)行解析。

基于這兩種類型的接口(put、delete接口也遵循get接口)來做分支。get接口走get接口參數(shù)的生成方法。post同理。

沿著這個(gè)思路,就開始著手準(zhǔn)備自動(dòng)化腳本逆向用例生成的第一個(gè)函數(shù)。

思路梳理
首先確定我們所想要的用例模板以及我們要解析的數(shù)據(jù)結(jié)構(gòu)。我將兩個(gè)數(shù)據(jù)結(jié)構(gòu)的示例都列在了下面。
明確了目標(biāo),最先要做的,就是獲取數(shù)據(jù)流
獲取到數(shù)據(jù)流后,判斷接口請求的類型
根據(jù)請求類型,將數(shù)據(jù)流分成不同的分支,然后發(fā)給所對應(yīng)的生成參數(shù)的方法。
最后將這些參數(shù)拼接成我們想要的用例模板
下例為MeterSphere的json格式示例

{"projectName": "","protocol": "HTTP","projectId": ","version": "v1.20.6-lts-1e3d1547","data": [{"id": "","projectId": "","name": "測試","method": "POST","modulePath": "/path1/path2/...","environmentId": null,"schedule": null,"status": "Underway","moduleId": "","userId": "admin","createTime": 1655860767171,"updateTime": 1655860767171,"protocol": "HTTP","path": "/api/v1/pub/stop","num": 100666,"tags": null,"originalState": null,"createUser": "Administrator","caseTotal": "0","caseStatus": "-","casePassingRate": "-","deleteTime": null,"deleteUserId": null,"order": 3155000,"refId": "08f6bde7-c906-459d-8a9b-95632bbeb5ee","versionId": "989beb9c-ebc8-45d3-8a80-967b06f2d192","latest": true,"description": null,"request": "{name:ss,canshu:111}","response": "respone","remark": null}],"cases": [],"mocks": [],
}

下例為最后解析成的用例樣式

- api_name: callback_roomscase_name: $ddt{case_name}content_type: application/jsonparameterize:- - case_name- 字段1- 字段2- 字段3- - 常規(guī)用例- oU- 70- 79request:base_url: url...headers: nulljson:root:字段1: $ddt{字段1}字段2: $ddt{字段2}字段3: $ddt{字段3}method: POSTurl: /xxx/xxxvalidata:- contains: 200

得到MeterSphere數(shù)據(jù)并做解析

# 得到MeterSphere數(shù)據(jù)并做解析
def get_ms_data(filename):"""get_data: 數(shù)據(jù)源apis: 接口清單get_params: get請求參數(shù)api_name: 接口名稱method: 請求方式get_apis: get接口:return:拼接好的數(shù)據(jù)集"""# 所有接口的字典數(shù)據(jù)集合apis = {}# 獲取ms文件流with open(filename, "r", encoding="utf-8") as f:request_params = json.load(f)# 解析參數(shù).判斷接口是什么請求for i in request_params["data"]:get_data = ipath = get_data["path"]api_name = str(path).split("/")if len(api_name) > 1:api_name = api_name[-2] + "_" + api_name[-1]else:api_name = api_name[-1]method = get_data["method"]get_apis = {path: {"api_name": api_name,"method": method,"content_type": "application/json"}}if method.lower() in ["get", "put", "delete"]:# 如果是get請求.調(diào)用解析get參數(shù)try:# 調(diào)用生成params參數(shù)get_params = get_arguments(json.loads(get_data["request"])["arguments"])get_apis[path].update(get_params)apis.update(get_apis)except Exception as e:print_log(Exception(e))else:try:# 兼容post接口中的請求參數(shù)是parasm類型if "arguments" in get_data["request"] and "jsonSchema" not in json.loads(get_data["request"])["body"]:# 調(diào)用生成params參數(shù)get_params = get_arguments(json.loads(get_data["request"])["arguments"])get_apis[path].update(get_params)get_apis[path]["content_type"] = "application/text"apis.update(get_apis)else:# 兼容post是jsonSchema對象的參數(shù)類型if "jsonSchema" in json.loads(get_data["request"])["body"]:try:global NODENODE = Truepost_params = deal_with_data(data=json.loads(get_data["request"])["body"]["jsonSchema"],required_list=json.loads(get_data["request"])["body"]["jsonSchema"]["required"])get_apis[path].update(post_params)apis.update(get_apis)except KeyError:post_params = deal_with_data(data=json.loads(get_data["request"])["body"]["jsonSchema"])get_apis[path].update(post_params)apis.update(get_apis)else:print("測試")# 后續(xù)迭代...except Exception as e:print_log(Exception(e))raise Exception(e)return apis

這個(gè)函數(shù)我把它構(gòu)想成一個(gè)經(jīng)理,接到需求后,根據(jù)每個(gè)人的職責(zé)不同,分給所對應(yīng)的人。然后接收這些手下的工作反饋,把這些反饋組裝成報(bào)告。

在編寫過程中,只是一股腦的想把這件事做完。忽略了定義函數(shù)時(shí)需要遵循的單一職責(zé)原則(SRP原則,在python工匠中提到,每個(gè)函數(shù)應(yīng)該遵循單一職責(zé)。這樣方便后期維護(hù))。上面這個(gè)函數(shù),即做了類型判斷的工作,也做了數(shù)據(jù)拼接、分配給指定函數(shù)的工作。這樣如果要修改某一個(gè)職責(zé)的話。這個(gè)函數(shù)就需要做好整體維護(hù)的準(zhǔn)備?;诖舜蠹以诰帉懞瘮?shù)的時(shí)候,也盡可能保證函數(shù)的單一職責(zé)。
下面是配套學(xué)習(xí)資料,對于做【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個(gè)倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!

軟件測試面試小程序

被百萬人刷爆的軟件測試題庫!!!誰用誰知道!!!全網(wǎng)最全面試刷題小程序,手機(jī)就可以刷題,地鐵上公交上,卷起來!

涵蓋以下這些面試題板塊:

1、軟件測試基礎(chǔ)理論 ,2、web,app,接口功能測試 ,3、網(wǎng)絡(luò) ,4、數(shù)據(jù)庫?,5、linux

6、web,app,接口自動(dòng)化 ,7、性能測試?,8、編程基礎(chǔ),9、hr面試題 ,10、開放性測試題,11、安全測試,12、計(jì)算機(jī)基礎(chǔ)

?

文檔獲取方式:

這份文檔,對于想從事【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個(gè)倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!

http://www.risenshineclean.com/news/54595.html

相關(guān)文章:

  • 免費(fèi)網(wǎng)站代碼如何提升網(wǎng)站seo排名
  • 電子商務(wù)靜態(tài)網(wǎng)站建設(shè)心得上海網(wǎng)絡(luò)營銷公司
  • 做外貿(mào)的要有自己的網(wǎng)站嗎網(wǎng)絡(luò)營銷渠道可分為
  • 企業(yè)網(wǎng)站的常見服務(wù)直通車關(guān)鍵詞優(yōu)化
  • 廣州網(wǎng)站備案拍照南京網(wǎng)站推廣公司
  • 網(wǎng)頁和網(wǎng)站做哪個(gè)好用嗎個(gè)人如何優(yōu)化網(wǎng)站有哪些方法
  • joomla與wordpress學(xué)哪個(gè)好企業(yè)seo網(wǎng)站營銷推廣
  • 建設(shè)網(wǎng)站 懷疑對方傳銷 網(wǎng)站制作 緩刑在線網(wǎng)頁編輯平臺(tái)
  • 建設(shè)一個(gè)電子商務(wù)網(wǎng)站seo 優(yōu)化公司
  • 做視頻怎么去除網(wǎng)站泉州排名推廣
  • WordPress關(guān)站插件廣州今天新聞
  • 做it公司網(wǎng)站站長域名查詢工具
  • 政府網(wǎng)站建設(shè)整改情況汕頭網(wǎng)絡(luò)營銷公司
  • b2c網(wǎng)站代表和網(wǎng)址做銷售最掙錢的10個(gè)行業(yè)
  • 豐胸個(gè)人網(wǎng)站建設(shè)上海優(yōu)化網(wǎng)站公司哪家好
  • 英文自助建站排行榜哪個(gè)網(wǎng)站最好
  • 怎么做網(wǎng)站開發(fā)的方案線上營銷推廣方式
  • wordpress電腦安裝教程網(wǎng)站seo優(yōu)化報(bào)告
  • 揚(yáng)州網(wǎng)站建設(shè)網(wǎng)絡(luò)營銷的方法
  • 科技公司網(wǎng)站源碼企業(yè)網(wǎng)站的優(yōu)化建議
  • 只用django做網(wǎng)站友情鏈接購買平臺(tái)
  • 專做網(wǎng)站的公司免費(fèi)網(wǎng)站制作
  • wordpress自定義模塊鄭州粒米seo外包
  • 免費(fèi)搭建網(wǎng)站模板淘寶客怎么做推廣
  • 網(wǎng)上電商教程seo優(yōu)化招聘
  • 阿里云從哪里建設(shè)網(wǎng)站交換友情鏈接的渠道有哪些
  • 備案期間網(wǎng)站要關(guān)閉嗎seo優(yōu)化查詢
  • 服裝網(wǎng)站建設(shè)任務(wù)表網(wǎng)站推廣和優(yōu)化系統(tǒng)
  • 畢設(shè)什么類型網(wǎng)站容易做國外廣告聯(lián)盟平臺(tái)
  • 貨架 網(wǎng)站建設(shè) 牛商網(wǎng)友情鏈接圖片