-
前言
-
一、后臺(tái)上傳圖片接口
-
二、用postman來做這種有依賴的接口
-
三、使用 Template 模塊進(jìn)行字符串的替換
-
四、使用 Template 模塊進(jìn)行字符串的替換(針對(duì)于Excel表格中的數(shù)據(jù))
-
總結(jié)
前言
本章中,對(duì)接口的依賴做了闡述,后臺(tái)上傳圖片。以及使用Template模塊進(jìn)行字符串的替換。
一步一步的加深,對(duì)單獨(dú)線性和對(duì)一個(gè)功能封裝代碼的進(jìn)階闡述。
提示:以下是部分知識(shí)點(diǎn)的補(bǔ)充,做一個(gè)參考。截圖中的備注信息也是重點(diǎn)。
一、后臺(tái)上傳圖片接口
我們知道上傳圖片,肯定是在賬號(hào)登錄了的情況下才能夠進(jìn)行操作。那么在上傳圖片里面,我們首先會(huì)考慮到拿到登錄后的某個(gè)東西。才能夠帶著這個(gè)東西進(jìn)行操作,如果沒有這個(gè)東西,那么就相當(dāng)于識(shí)別不了是否是登錄狀態(tài)。這個(gè)東西就是我們平時(shí)說的token。這個(gè)token就相當(dāng)于是一把鑰匙。
1) 先登錄,拿到鑒權(quán)。
2)帶上token
? ?請(qǐng)求頭里:Authorization ?bearer52062948-9cd9-4455-a5e7-222caf9a045d
? ?
上傳圖片地址:http://mall.lemonban.com:8108/admin/file/upload/img
請(qǐng)求方式:post
content-type:multipart/form-data
上傳圖片成功之后,數(shù)據(jù)庫:tz_attach_file
注意:這個(gè)說的這個(gè)數(shù)據(jù)庫里,是指在數(shù)據(jù)庫里面這個(gè)表當(dāng)中有這張圖片了。對(duì)比可以到數(shù)據(jù)庫去看看。思想是:查詢到這張圖片,進(jìn)行鍵值比對(duì)。
?這里標(biāo)紅的地方就是最重要的地方。
?注意點(diǎn)1:
這里的? "Authorization": "bearer"+token? 這個(gè)token是從登陸的那個(gè)步驟提取出來的,需要與bearer做組合。
組合方式可以有兩種寫法:
(1)headers1 = {"Authorization": f"bearer{token}"}
(2)headers1 = {"Authorization": "bearer"+token}
?一個(gè)用正常的字符拼接;一個(gè)用 f 表達(dá)式
注意點(diǎn)2:
?我們從這個(gè)上傳圖片接口的請(qǐng)求里面,也可以看出這個(gè)name也是file
Python中files字段中的三種上傳圖片的方式:
二、用postman來做這種有依賴的接口
依賴:指上一個(gè)接口的部分?jǐn)?shù)據(jù),我們要拿到下一個(gè)接口中使用。(也可以說下一個(gè)接口,要用到上一個(gè)接口返回的部分?jǐn)?shù)據(jù))
這里有個(gè)很好的工具:Apipost
下載中心-Apipost-中文版接口調(diào)試與文檔管理工具
1、下面使用Apipost做接口測(cè)試:
?
?
?
2、用Apipost一個(gè)更簡(jiǎn)單的方法:
注意點(diǎn):
(1)在第二個(gè)接口里面直接把鑒權(quán)的token放在專門放鑒權(quán)的地方,不用放在請(qǐng)求頭里面。
(2)請(qǐng)求頭里面不放Content_Type
(3)body里面不用指明內(nèi)容類型
?
?
三、使用 Template 模塊進(jìn)行字符串的替換
string的Template模塊用法:
1、from string import Template
2、tempTemplate = Template(含有要替換的變量) 要替換的變量前面加$
?? {"file": ("$img_name", open("$img_path", "rb"), "image/png")}
3、tempTemplate.substitute(要替換的變量名=替換值,要替換的變量名=替換值)??
?? new_str =tempTemplate.substitute(img_name=img_name,img_path=img_path)
注意:
舉例:
使用了字典的取值方式進(jìn)行值的替換
四、使用 Template 模塊進(jìn)行字符串的替換(針對(duì)于Excel表格中的數(shù)據(jù))
對(duì)與這種復(fù)雜的數(shù)據(jù)我們先一步一步的實(shí)現(xiàn)。我們之前已經(jīng)講解了Template的用法。那么要替換Excel表格里面的數(shù)據(jù),首先我們得拿到表格中的要替換的數(shù)據(jù)(字符串)。
我們先從最簡(jiǎn)單的替換入手:
1、使用py文件里面的數(shù)據(jù),后面我們?cè)偈褂肊xcel表格中的數(shù)據(jù)。
?
?
2、使用Excel表格中的數(shù)據(jù)
(首先我們先要從表格中拿到數(shù)據(jù))
3、把單個(gè)的代碼裝到函數(shù)中
這里也就是把零散的步驟,裝到函數(shù)中
4、現(xiàn)在使用類來實(shí)現(xiàn)這個(gè)功能
5、現(xiàn)在使用unitetest框架來實(shí)現(xiàn)
6、使用ddt和unitetest框架結(jié)合
?
補(bǔ)充點(diǎn)額外的知識(shí):
我們平時(shí)使用Excel表格中的數(shù)據(jù),其實(shí)拿出來后就是一個(gè)列表中裝了一個(gè)字典。
對(duì)一個(gè)列表進(jìn)行for循環(huán),那么拿出來的數(shù)據(jù)就是一個(gè)字典。
舉例:
總結(jié)
這里面設(shè)計(jì)到很多細(xì)節(jié)的點(diǎn),需要逐步一個(gè)一個(gè)知識(shí)點(diǎn)的突破,從最簡(jiǎn)單的框架入手,再依次復(fù)雜的進(jìn)入多個(gè)知識(shí)點(diǎn)的融合。文章來源:http://www.zghlxwxcb.cn/news/detail-718500.html
有點(diǎn)繁瑣,也容易昏。我整理這個(gè)知識(shí)點(diǎn),耗費(fèi)了我很多時(shí)間。到后期會(huì)花費(fèi)更多的時(shí)間。但是對(duì)于自己建立自己的框架體系有很大的作用。文章來源地址http://www.zghlxwxcb.cn/news/detail-718500.html
到了這里,關(guān)于接口自動(dòng)化【三】(接口依賴之上傳圖片;postman解決依賴的接口;Template 模塊用法)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!