1. 程式人生 > >介面測試基礎(fiddler、postman的使用、python實現測試介面程式)

介面測試基礎(fiddler、postman的使用、python實現測試介面程式)

寫在前面:本文主要的章節規劃:

 

1.什麼是介面測試

   另外,有的時候會直接呼叫別的公司的介面,比如銀行的、淘寶的、支付寶的,此時也需要做介面測試以及驗證資料;

做介面測試的好處:   

  

其中, get和post請求是用的最多的

 (截圖來自fiddler)                  

 get和post請求的區別

從表面上看,GET後面跟的資料要比POST請求多很多!而get和post提交的資料哪個更大一些呢?get是通過位址列來提交資料的,post是通過WebForm以表單的形式提交的,因為位址列能輸入資料的大小是有限制的,所以一般情況下認為post提交的資料更大一些!

get和post哪個更安全?通過WebForm以表單的形式提交資料的post請求更安全

2.介面測試流程

介面測試流程中的重點是什麼?

為什麼要設計測試用例?

 

介面測試用例設計的著手點:   

1.功能用例設計的測試點:1.功能是否正常;2.功能是否按照介面文件實現

2.邏輯業務用例設計的測試點:1.是否依賴業務(比如“下單”操作要判斷是否已經登入成功)

3.異常用例設計的測試點:  

  (引數異常-3.多引數)

 (資料異常-1.關鍵字資料)

(資料異常-2.資料為空)

4.安全用例設計的測試點:  

4.1,cookie在像“下單”這樣的邏輯業務中會用到;如此圖:

4.2,header特別是在移動端,為了安全考慮,會把header資訊加進去;  

4.3,唯一識別碼,只在測試移動端介面的時候會用到,和header類似,應用會有一個唯一識別碼,把手機的唯一識別碼傳送到服務端作為唯一的驗證,如果是冒充的、或者說資料庫中不存在,也會給出錯誤的提示資訊;

3.介面測試工具的介紹與使用

3.1,介面測試工具的重要性                                                                                                   3.2,介面測試工具分類

    手工測試介面效率很低                                工具測試效率高、質量好  

                         

選擇合適的介面測試工具能提高效率,保證質量;但是沒有從實際情況出發,選擇使用不當的工具反而會有相反的效果

                 

3.2,介面測試工具分類介紹

3.2.1,抓取介面工具:

httpwatch:整合在firefox和IE瀏覽器裡的一個外掛,除非有必要時選擇,一般情況下不選擇                                                          

      

wireshark:功能比較齊全,比較龐大的工具,無論是http的還是tcp的請求都能抓取到,不推薦使用

fiddler:輕量級的、功能比較齊全,只會記錄http請求,可以獨自用來完成介面測試

是抓包工具的不二選擇,還有其他功能:新增、篩選、切換host,介面測試等;

3.2,測試介面工具:

     ,其中postman是最常用的;

    

   

3.3,fiddler的運用

fiddler的優點:  

什麼是fiddler?

fiddler是一個http協議代理除錯工具,它能夠記錄並檢查所有你的電腦和網際網路之間的http通訊、設定斷點,檢查所有“進出”fiddler的資料;

fiddler的工作原理:fiddler在電腦端設定代理,電腦發出的所有http請求都會經過這個代理,代理收到http請求之後再把收到的http請求發給伺服器,伺服器接受到http請求後進行處理並把處理後得到的資料返回給fiddler,fiddler把資料再返回給電腦端;

fiddler的佈局:

fiddler的運用:

1.檢視介面請求方式:;2.檢視請求資料、響應資料:

3.介面返回狀態:(200代表返回成功,還有其他的狀態如:500、404、504等等);4.設定代理(測試移動端介面的時候需要通過“代理”來抓取):Tools->Teleriik Fiddler Options  然後再移動端繼續做個設定;5.header、cookie:

6.設定斷點:;7.新增篩選:

8.fiddler進行介面測試;

3.4,postman的運用

 postman是有google開發的介面測試外掛

   

collections中的收藏的資料夾中的請求可以批量執行

  

3.5,python--get介面實戰

  

 

3.5,python--post介面實戰

   

 

4.掌握介面測試基礎後,下一步的學習目標是什麼?