WebAPI測試概念及postman初識

什麼是接口?   ------   某個對象和外界交互的部分html

              消息交互接口:基於soap的web service  ---- http協議web

                                  web api   ------- http協議sql

                                  diameter、radius  ------ socket協議編程

              編程接口:各類語言的開發包json

              其餘接口:數據服務產品:sql語言操做接口api

                            對帳系統:FTP文件接口瀏覽器

web服務接口:互聯網產品對外提供的服務接口,咱們一般稱之爲web服務接口、web service接口、REST接口服務器

咱們常常說的'接口測試'、‘API測試’,就是對web服務接口的測試。 包括APP服務端接口。網絡

  主要包括兩種類型:① 基於SOAP的web service接口app

                            ② REST接口 

HTTP協議:超文本傳輸協議

       就是瀏覽器與服務器之間進行‘溝通’的一種規範。

       HTTP協議屬於應用層的協議。

       HTTP版本:在0.9  1.0  1.1(最普遍)  2

要想知道http協議,就要清楚它的請求和響應,固然還有請求方式、狀態碼、URL地址等。

       http請求:一個完整的http請求,包含一個請求行,若干個請求頭、空行、消息體

               請求行:描述客戶端的請求方法(如get、post等)、請求資源的名稱、http協議的版本號

               請求頭:包含客戶機請求的服務器主機名,客戶機的環境信息等

               (換行)

                消息體:指瀏覽器端經過http協議發送給服務器的實體數據(有三種數據格式:json、xml、www-form-urlencoded)

       HTTP請求方法最經常使用的有哪些:get 、post、head、put、delete

       http響應:一個http響應表明服務器端向客戶端回送的數據,它包括:一個狀態行、若干個消息頭、空行、以及實體內容(響應體)

               響應頭:包含 狀態碼、服務器類型、服務器的數據壓縮格式、傳送數據的編碼格式等

               狀態行:如HTTP/1.1 200 OK  (協議的版本號是1.1,響應狀態碼爲200  響應結果爲OK)

               實體內容:包含瀏覽器可以解析的靜態內容,例如 html、純文本、圖片等等信息

HTTP和HTML的區別?   

       HTTP是一種用來定義網頁的文本語言  標記語言

       HTTP是網絡上傳輸信息的協議

接口測試的流程:- 閱讀API接口文檔

                       - 編寫測試用例

                       - 根據測試用例進行API的手工測試

                                 ① 開發API工具

                                 ② 使用工具進行測試

 ------------------------------------------------------------------------------------------------------------------------------------------------------------

 postman工具的使用:是最普遍的rest api測試工具。

        postman提供了一個多窗口和多標籤的界面。

        側邊欄分爲兩個主要標籤History和Collections。咱們填過的請求都會自動的保存到history中;Collections能夠把咱們的API請求分類,實現目錄式管理。

        右邊區域是咱們操做的核心區域。用來填寫API請求的具體內容:包括http請求的url、請求頭、請求體,點擊發送後,查看響應信息是什麼都在這裏。

        構建http請求   ---- 包括URL、請求方法、請求頭、消息體

                     URL的構建:協議類型 如http能夠省略不寫,若是是https,則須要寫上。 如 www.baidu.com

                                           有時候,url請求中是有參數的,如 https://baike.baidu.com/item/Selenium/18266?fr=aladdin 問號後面的部分fr=aladdin就叫作查詢字符串

                                           也能夠有n多個參數,用符號&隔開  如?fr=aladdin&pagenum=1

                  請求頭的構建:要在HTTP頭部中添加字段,可在Headers標籤中添加

                                           添加好後,點擊send,發送出去的http請求中就會攜帶這些添加的頭部。

                  請求體的構建:最多見的就是post 、put請求,有時delete也有消息體

                                           不是全部的http請求都是有消息體的,這是由系統的設計者決定的。

                                           咱們在body中添加參數,並指定是什麼類型的消息體。換句話說就是將參數存放的位置從url移到了body

                                           消息體的類型都是經過headers中的content-type參數來代表的。如 Content-Type:application/x-www-form-urlencoded

                                           消息體類型除了application/x-www-form-urlencoded外,比較常見的還有application/json、application/xml,分別對應json格式的文本和xml格式的文本

                                           還有multipart/form-data

        json介紹:是一種編程語言對象的字符串表示法,是一種數據保存和傳輸的序列化格式。

                         在接口測試中,咱們須要傳遞數據對象給另外的程序,好比一個字典的內容。那咱們傳輸就必需要序列化,xml能夠用程序進行序列化,但效率不高,最後json解決了這一麻煩。

                         json好處:易讀、易編寫、易解析、易生成。

        若是數據格式是json或xml,這種狀況下來構造消息體,須要選擇類型爲raw,而且在右邊的text下拉框中選擇相應的類型,並在body編輯框中輸入相應格式的文本。

         

              選擇不一樣的類型,postman會自動添加對應的header

              raw並非一種http body的類型,而是postman用來表示 可直接填寫消息內容的方法。

        Collection和Folder:

        在postman中,咱們能夠用Collection和Folder對API進行分類存放和管理。collection能夠理解爲頂級目錄 像C盤同樣;Folder能夠理解爲C盤下的一個個目錄。

        一般一個產品的API接口測試,咱們能夠建立一個Collection和其對應。根據各個API的功能,分紅不一樣的Test Suite,對應到不一樣的Folder中。

        導入和導出:

                導入和導出最大的做用就是方便共享。好比 同事之間也要執行,就能夠把這些文件導出給到他,他再導入,仍能夠繼續執行。import是導入   export是導出。

                  

 

       建立postman帳戶:

               postman有比較高級的同步功能,只要有帳戶,無論在哪臺機器登陸,均可以使用該帳戶,獲取其保存的API信息。

相關文章
相關標籤/搜索