Python介面測試題(持續更新中)

2022-09-15 04:39:12 字數 2247 閱讀 9852

1、json和字典的區別?

json是輕量級的資料互動格式,以key-value的鍵值對形式來儲存資料,結構清晰,可以說是目前網際網路專案開發中最常用的一種資料互動格式。

字典,同樣是以key-value的鍵值對來儲存資料,是python中的一種資料型別。

2、你做介面自動化測試時,測試資料放**?

1) 對於一些基礎配置比如資料庫配置可以放到properties檔案(yaml檔案,沒用過就別拓展了)

2) 介面測試需要用到的資料可以放資料庫表,也可以放到excel中。

3、什麼是資料驅動?

資料驅動就是通過excel,或者xml,資料庫等資料結構來維護測試資料,通過相應的技術去處理,拿到測試資料用於測試,從而實現測試資料與**的解耦,資料驅動測試的本質是高階的引數化。

4、excel中如何設計你的用例?

1) 所有的介面資訊維護在乙個表單

2) 關於介面的用例資料維護在乙個表單

3) 介面傳參一列來傳,通過構造json格式的字串即可解決傳多個引數的問題,同時提公升了用例的可維護性

5、excel中的資料怎麼拿出來?

通過第三方庫openpyxl來完成,專案只需要引入openpyxl庫,通過它提供的api即可完成對於excel的操作,甚至於我們自己也可以做一些二次封裝,使得操作更方便。一行資料就是乙個用例。

6、如果有些介面做了鑑權(需要鑑定許可權),怎麼實現這些介面的自動化測試?

首先需要明確介面是通過什麼機制來實現的鑑權

如果是通過會話id(123456)來實現鑑權的,那麼先呼叫完登入介面,拿到它返回的這個資料,儲存起來,後面再呼叫其他介面的時候直接帶上這個資料過去就可以了。

如果是通過token來實現鑑權的,那麼同樣只需要在呼叫完登入介面,拿到它返回的這個資料,儲存起來,後面再呼叫其他介面的時候直接帶上這個資料過去就可以了。

7、什麼是會話?

所謂會話就是session,而session是一種伺服器的快取技術,由伺服器端建立,使用者登入了系統,一般就會把登入使用者的資訊儲存到這個session物件中,然後把此會話對應的id(jsessionid)返回,因此大部分系統都會用到session機制來實現鑑權。session儲存資料方式也是以key-value的形式。

8、什麼是token?

所謂token其實就是伺服器端返回的乙個字串(有點類似於:xys73494954sdhcdr83435這麼一串),這個資料是基於什麼演算法生成的需要找開發確認,一般這個資料是唯一的,伺服器每次返回的token都會不一樣。token之所以可以用來做鑑權,原理如下:

使用者a呼叫了登入介面--》登入了系統b--》伺服器端生成了乙個唯一的token資訊(假設為c),然後會拿使用者的編號id(假設為d)做了乙個對映:c-d,然後將這樣的對映關係存到資料庫或redis等快取中,然後再返回這個token給客戶端--》客戶端再呼叫其他需要鑑權的介面時,只需要將快取起來的這個token帶過去驗證--》伺服器根據此token檢查是否有登入使用者資訊來判斷此請求是否是乙個已登入授權的使用者。(這裡客戶端怎麼取到這個token,怎麼存,再次請求時怎麼帶過去,上面介面鑑權部分已解釋)。

某個介面請求,引數依賴上個介面的返回資料,怎麼處理(介面關聯)?

場景:b介面在呼叫的時候引數依賴於a介面的返回資料。

處理方案:

a介面呼叫完--》從響應中取出b依賴的這個引數--》儲存起來--》b呼叫的時候,取出這個資訊--》當做引數傳過去即可。

儲存方案:

參考問題5中的資料儲存方式

9、介面呼叫依賴第三方的介面b,而b介面還未提供給你,如何處理?

通過mock框架搭建自己的mock系統/平台(其實就是自己開發介面),模擬這個第三方介面mock乙個出來即可,這樣就解決了這個依賴。

10、介面測試的垃圾資料如何清理?

可以自己準備單獨的環境(獨立的資料庫),這樣介面呼叫產生的資料可以在整個套件執行完後(@aftersuite)通過執行sql指令碼來完成資料刪除。

11、你做介面自動化,專案用的是什麼資料庫,用什麼來操作的這個資料庫?

mysql,可以通過jdbc來實現資料庫的增刪查改等操作。

智商測試題

5個囚犯,分別按1 5號在裝有100顆綠豆的麻袋抓綠豆,規定每個人至少抓一顆,而抓得最多的和最少的人將被處死,而且,他們之間不能交流,但在抓的時候,可以摸出剩下的豆子數。問他們中誰的存活機率最大?1 假設第乙個人抓的綠豆多於20顆,則第二個人秩序比第乙個人少抓一顆,這樣剩下的綠豆少於60顆,分給3個...

智力測試題

國際標準的iq 智力 測試題 請有興趣並且未做的人進去看看以你最快的速度測試,測完以後說說你的智商是多少 心理學用 智力商數 即 iq 來表示乙個人的智力水平。智商通常的演算法為 心理年齡 實際年齡 100 經過研究劃分,智力水平可分為7個等級。1 iq值大於140的是天才 2 在120 140之間...

網路測試題

1 osi參考模型,一共幾層?7層2 tcp ip參考模型,一共幾層?分別是什麼 低到高 五層 物理層,資料鏈路層,網路層,傳輸層,應用層。3,計算機,交換機,網絡卡,防火牆,路由器分別是幾層裝置?應用層 資料鏈路層 物理層 運輸層 網路層 4,mac位址用二進位制表示一共多少位?一共分幾組?48位...