一種接口測試方法、應用設備以及服務設備的制造方法
【專利摘要】本發明實施例公開了一種接口測試方法、應用設備以及服務設備,方法包括:應用設備接收服務設備發送的攜帶有待測試接口類型的測試請求,并根據所述待測試接口類型生成接口調用請求;發送所述接口調用請求到所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應的接口;接收所述服務設備返回的接口響應結果,并根據所述接口響應結果和預設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所述接口時所生成的。采用本發明,可降低人力、溝通成本,并提高接口測試的效率。
【專利說明】
一種接口測試方法、應用設備以及服務設備
技術領域
[0001] 本發明涉及計算機技術領域,尤其涉及一種接口測試方法、應用設備以及服務設 備。
【背景技術】
[0002] 在目前的大多數互聯網產品中,都會接入第三方服務,用戶通過這些互聯網產 品可以使用對應的第三方服務資源。通常第三方服務都會提供一些HTTPOlypertext transfer protocol,超文本傳送協議)接口,這些HTTP接口由互聯網產品去調用,以告知 第三方服務去執行對應的操作。
[0003] 互聯網產品在上線第三方服務之前,都需要對第三方服務的HTTP接口進行測試。 目前的接口測試方式通常為:由第三方服務提供商編寫文檔,以告知互聯網產品側的開發 人員如何接入該服務,再由互聯網產品側的開發人員根據該文檔寫接入邏輯代碼,然后寫 代碼進行測試,在發現有問題時雙方一起定位解決。目前這種接口測試方式需要的人力、溝 通成本太高,而且測試過程比較復雜繁瑣,嚴重影響了接口測試的效率。
【發明內容】
[0004] 本發明實施例所要解決的技術問題在于,提供一種接口測試方法、應用設備以及 服務設備,可降低人力、溝通成本,并提高接口測試的效率。
[0005] 本發明第一方面提供了一種接口測試方法,包括:
[0006] 應用設備接收服務設備發送的攜帶有待測試接口類型的測試請求,并根據所述待 測試接口類型生成接口調用請求;
[0007] 所述應用設備發送所述接口調用請求到所述服務設備,以使所述服務設備根據所 述接口調用請求調用與所述待測試接口類型對應的接口;
[0008] 所述應用設備接收所述服務設備返回的接口響應結果,并根據所述接口響應結果 和預設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所述接口時所生 成的。
[0009] 本發明第二方面提供了一種接口測試方法,包括:
[0010] 服務設備發送攜帶有待測試接口類型的測試請求到應用設備,以使所述應用設備 根據所述待測試接口類型生成接口調用請求;
[0011] 所述服務設備接收所述應用設備發送的所述接口調用請求,并根據所述接口調用 請求調用與所述待測試接口類型對應的接口;
[0012] 所述服務設備在調用所述接口時生成接口響應結果,并發送所述接口響應結果到 所述應用設備,以使所述應用設備根據所述接口響應結果和預設的測試條件生成測試結 果。
[0013] 本發明第三方面提供了一種應用設備,包括:
[0014] 第一接收模塊,用于接收服務設備發送的攜帶有待測試接口類型的測試請求,并 根據所述待測試接口類型生成接口調用請求;
[0015] 調用請求發送模塊,用于發送所述接口調用請求到所述服務設備,以使所述服務 設備根據所述接口調用請求調用與所述待測試接口類型對應的接口;
[0016] 第二接收模塊,用于接收所述服務設備返回的接口響應結果,并根據所述接口響 應結果和預設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所述接口 時所生成的。
[0017] 本發明第四方面提供了一種服務設備,包括:
[0018] 測試請求發送模塊,用于發送攜帶有待測試接口類型的測試請求到應用設備,以 使所述應用設備根據所述待測試接口類型生成接口調用請求;
[0019] 調用請求接收模塊,用于接收所述服務設備發送的所述接口調用請求,并根據所 述接口調用請求調用與所述待測試接口類型對應的接口;
[0020] 生成發送模塊,用于在調用所述接口時生成接口響應結果,并發送所述接口響應 結果到所述應用設備,以使所述應用設備根據所述接口響應結果和預設的測試條件生成測 試結果。
[0021] 本發明實施例中的應用設備通過接收服務設備發送的攜帶有待測試接口類型的 測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求到 所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應 的接口,所述應用設備再接收所述服務設備返回的接口響應結果,并根據所述接口響應結 果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備在調用所述接口時所 生成的;由此可見,應用設備和服務設備之間可以自動交互以完成接口測試,降低了人力、 溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
【附圖說明】
[0022] 為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以 根據這些附圖獲得其他的附圖。
[0023] 圖1是本發明實施例提供的一種接口測試方法的流程示意圖;
[0024] 圖2是本發明實施例提供的另一種接口測試方法的流程示意圖;
[0025] 圖2a是本發明實施例提供的一種測試界面示意圖;
[0026] 圖2b是本發明實施例提供的另一種測試界面示意圖;
[0027] 圖3是本發明實施例提供的又一種接口測試方法的流程示意圖;
[0028] 圖4是本發明實施例提供的又一種接口測試方法的流程示意圖;
[0029] 圖5是本發明實施例提供的一種應用設備的結構示意圖;
[0030] 圖6是本發明實施例提供的一種調用請求發送模塊的結構示意圖;
[0031] 圖7是本發明實施例提供的一種第二接收模塊的結構示意圖;
[0032] 圖8是本發明實施例提供的一種服務設備的結構示意圖。
【具體實施方式】
[0033] 下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于 本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他 實施例,都屬于本發明保護的范圍。
[0034] 請參見圖1,是本發明實施例提供的一種接口測試方法的流程示意圖,所述方法包 括:
[0035] S101,應用設備接收服務設備發送的攜帶有待測試接口類型的測試請求,并根據 所述待測試接口類型生成接口調用請求;
[0036] 具體的,所述應用設備可以包括互聯網產品對應的客戶端以及后臺服務器,所述 互聯網產品是集成了第三方服務的產品;所述服務設備可以包括第三方服務的提供商對應 的客戶端以及后臺服務器。在服務設備側,用戶可以在預設的可視化的接口測試界面中輸 入需要進行測試的接口類型,用戶輸入需要進行測試的接口類型并點擊確認后,所述服務 設備可以生成攜帶有待測試接口類型的測試請求,此時,所述應用設備可以接收所述服務 設備發送的攜帶有待測試接口類型的測試請求,所述應用設備再根據所述待測試接口類型 生成接口調用請求。
[0037] 其中,所述服務設備中的第三方服務的接口可以包括增加接口、刪除接口、修改接 口、查看接口等等,例如,第三方服務提供了云空間(放在網絡上的存儲空間),那么當應用 設備調用第三方服務中的增加接口時,服務設備可以為應用設備側的用戶增加一個存儲空 間。所述第三方服務的各個接口對應的URL (Uniform Resource Locator,統一資源定位符) 是相同的,但HTTP方法不同,例如,如下表1所示的增加接口、刪除接口、修改接口、查看接 P :
[0038]
[0039] 表 1
[0040] S102,所述應用設備發送所述接口調用請求到所述服務設備,以使所述服務設備 根據所述接口調用請求調用與所述待測試接口類型對應的接口;
[0041] 具體的,所述應用設備生成所述接口調用請求后,可以發送所述接口調用請求到 所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應 的接口。例如,用戶想要測試第三方服務中的刪除接口,用戶可以在所述服務設備側輸入待 測試接口類型為刪除接口,由所述服務設備發送攜帶有待測試接口類型為刪除接口的測試 請求到所述應用設備,再由所述應用設備發送與刪除接口對應的接口調用請求到所述服務 設備,即發送HTTP方法為DELETE的請求到第三方服務接口對應的URL,以調用第三方服務 中的刪除接口。
[0042] S103,所述應用設備接收所述服務設備返回的接口響應結果,并根據所述接口響 應結果和預設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所述接口 時所生成的;
[0043] 具體的,所述服務設備在調用所述接口的過程即為執行所述接口對應功能的過 程,例如,若所述服務設備調用的是刪除接口,則所述服務設備將從用戶項目中刪除指定 插件資源。所述服務設備在調用所述接口的過程中可以生成響應結果,所述響應結果可 以包括響應時長、狀態碼、響應格式、響應ID等等,此時,所述應用設備可以接收所述服 務設備返回的接口響應結果,并根據所述接口響應結果和預設的測試條件生成測試結 果,所述測試條件可以包括基礎數據完備、響應未超時、返回的狀態碼為200、響應格式為 JSON(JavaScript Object Notation,數據交換格式)格式、響應包含ID等等。例如,響應 結果包含狀態碼和響應格式,所述測試條件包括返回的狀態碼為200和響應格式為JS0N格 式,若所述響應結果中的狀態碼也為200且響應格式也為JS0N,則根據所述響應結果和所 述測試條件所生成的測試結果將包含正常提示信息;若所述響應結果中的狀態碼不為200 和/或響應格式不為JS0N,則根據所述響應結果和所述測試條件所生成的測試結果將包含 錯誤提示信息以及問題定位提示信息。
[0044] 所述應用設備生成測試結果后,可以將所述測試結果再返回到所述服務設備,并 在所述服務設備的可視化的接口測試界面中顯示所述測試結果,使得所述服務設備側的用 戶可以直觀地了解所述接口是否可用及是否滿足規范,無需所述應用設備側的專職人員協 助測試,大大的降低了人力、溝通成本。
[0045] 本發明實施例中的應用設備通過接收服務設備發送的攜帶有待測試接口類型的 測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求到 所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應 的接口,所述應用設備再接收所述服務設備返回的接口響應結果,并根據所述接口響應結 果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備在調用所述接口時所 生成的;由此可見,應用設備和服務設備之間可以自動交互以完成接口測試,降低了人力、 溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
[0046] 再請參見圖2,是本發明實施例提供的一種接口測試方法的流程示意圖,所述方法 包括:
[0047] S201,應用設備接收服務設備發送的攜帶有待測試接口類型的測試請求,并根據 所述待測試接口類型生成接口調用請求;所述測試請求還包括至少一個目標參數類型;
[0048] 具體的,所述應用設備可以包括互聯網產品對應的客戶端以及后臺服務器,所述 互聯網產品是集成了第三方服務的產品;所述服務設備可以包括第三方服務的提供商對應 的客戶端以及后臺服務器。在服務設備側,用戶可以在預設的可視化的接口測試界面中輸 入需要進行測試的接口類型,用戶輸入需要進行測試的接口類型并點擊確認后,所述服務 設備可以生成攜帶有待測試接口類型的測試請求,此時,所述應用設備可以接收所述服務 設備發送的攜帶有待測試接口類型的測試請求,所述應用設備再根據所述待測試接口類型 生成接口調用請求。進一步的,所述服務設備側的用戶還可以在所述可視化的接口測試界 面中輸入至少一個目標參數類型,使得所述服務設備所生成的測試請求可以包括所述待測 試接口類型以及所述至少一個目標參數類型。
[0049] 其中,所述服務設備中的第三方服務的接口可以包括增加接口、刪除接口、修改接 口、查看接口等等,例如,第三方服務提供了云空間(放在網絡上的存儲空間),那么當應用 設備調用第三方服務中的增加接口時,服務設備可以為應用設備側的用戶增加一個存儲空 間。所述第三方服務的各個接口對應的URL (Uniform Resource Locator,統一資源定位符) 是相同的,但HTTP方法不同,具體可以參見上述圖1對應實施例中的S101中的表1。
[0050] 再請參見圖2a,是本發明實施例提供的一種測試界面示意圖,所述測試界面為在 所述服務設備上顯示的可視化的接口測試界面,所述測試界面中所示的返回參數包括由用 戶所填寫的至少一個目標參數類型,所述測試界面中的所輸入的至少一個目標參數類型包 括:token、channel、rsync_hosts_allow、rsync_password、project、tenant_id、id、des_ project、refresh_domain〇
[0051] S202,所述應用設備將所述至少一個目標參數類型封裝成參數請求;
[0052] 具體的,所述應用設備接收攜帶有所述待測試接口類型和所述至少一個目標參數 類型的測試請求后,所述應用設備可以將所述至少一個目標參數類型封裝成參數請求。例 如,若所述至少一個目標參數類型包括channel、rsync_hosts_allow、plan,則封裝后的參 數請求可以為:
[0053]
[0054] S203,發送所述參數請求和所述接口調用請求到所述服務設備,以使所述服務設 備根據所述接口調用請求調用與所述待測試接口類型對應的接口,并在調用所述接口時生 成基本狀態參數以及與所述參數請求中的所述至少一個目標參數類型分別對應的目標參 數,并將所述基本狀態參數和所述目標參數作為響應結果;
[0055] 具體的,所述應用設備生成所述參數請求和所述接口調用請求后,可以發送所述 參數請求和所述接口調用請求到所述服務設備,以使所述服務設備根據所述接口調用請求 調用與所述待測試接口類型對應的接口,并在調用所述接口時生成基本狀態參數以及與所 述參數請求中的所述至少一個目標參數類型分別對應的目標參數,并將所述基本狀態參數 和所述目標參數作為響應結果。其中,所述應用設備可以將所述參數請求和所述接口調用 請求發送到所述服務設備的指定URL,使得所述服務設備可以接收到所述接口調用請求和 所述參數請求。所述服務設備在調用所述接口的過程即為執行所述接口對應功能的過程, 例如,若所述服務設備調用的是刪除接口,則所述服務設備將從用戶項目中刪除指定插件 資源。所述服務設備在調用所述接口的過程中可以生成所述基本狀態參數和所述目標參 數;所述基本狀態參數可以包括響應時長、狀態碼、響應格式、響應ID等等,所述目標參數 包括與所述至少一個目標參數類型中各目標參數類型分別對應的參數,例如,所述目標參 數可以包括channel的參數數值、rsync_hosts_allow的參數數值、plan的參數數值。所述 服務設備生成所述基本狀態參數和所述目標參數后,再將所述基本狀態參數和所述目標參 數封裝成一個響應結果。
[0056] S204,所述應用設備接收所述服務設備返回的接口響應結果;
[0057] 具體的,所述服務設備生成所述響應結果后,所述應用設備接收所述服務設備返 回的接口響應結果。
[0058] S205,檢測所述響應結果中的所述基本狀態參數是否均滿足預設的測試條件;
[0059] 具體的,所述測試條件可以包括基礎數據完備、響應未超時、返回的狀態碼為200、 響應格式為JS0N格式、響應包含ID等等。例如,若響應結果中的所述基本狀態參數包含狀 態碼和響應格式,則所述應用設備需要檢測所述狀態碼是否為200,且所述響應格式是否為 JS0N格式。
[0060] S206,生成異常測試結果;
[0061] 具體的,當S205檢測出所述響應結果中的所述基本狀態參數不均滿足預設的測 試條件時,所述應用設備將生成異常測試結果,所述異常測試結果將包含錯誤提示信息以 及問題定位提示信息。例如,若所述基本狀態參數中的狀態碼為401,響應格式為JS0N,則 所述應用設備可以檢測出狀態碼不為200,即檢測出所述基本狀態參數不均滿足預設的測 試條件,此時,所述應用設備可以生成異常測試結果。
[0062] S207,判斷所述至少一個目標參數類型是否與所述目標參數一一對應;
[0063] 具體的,當S205檢測出所述響應結果中的所述基本狀態參數均滿足預設的測試 條件時,所述應用設備可以判斷所述至少一個目標參數類型是否與所述目標參數一一對 應,即判斷所述目標參數分別對應的目標參數類型是否包括所述測試請求中所攜帶的全部 目標參數類型。
[0064] S208,生成正常測試結果;
[0065] 具體的,當S207判斷出所述至少一個目標參數類型與所述目標參數一一對應時, 說明所述響應結果中包含所述服務設備側的用戶在所述可視化的接口測試界面中所輸入 的全部目標參數類型,此時,所述應用設備可以生成正常測試結果,所述正常測試結果可以 包含測試正常提示信息。
[0066] 當S207判斷出所述至少一個目標參數類型不與所述目標參數一一對應時,執行 S206的步驟,即所述應用設備將生成異常測試結果,所述異常測試結果將包含錯誤提示信 息以及問題定位提示信息。
[0067] 再請參見圖2b,是本發明實施例提供的另一種測試界面示意圖,在圖2a所示的測 試界面中輸入并確認各個參數后,即可得到圖2b所示的測試界面,圖2b所示的測試界面是 以增加接口為例,即創建資源,圖2b所示的測試界面中顯示將POST請求發送到URL地址, 即說明所述應用設備發送攜帶有增加接口類型的接口調用請求到所述服務設備;圖2b所 示的測試界面中顯示的請求body即為所述參數請求,即說明所述服務設備在調用所述增 加接口時可以根據所述請求body獲取多個目標參數;圖2b所示的測試界面中顯示的期望 返回包括所述服務設備在正常狀態下應該生成的參數;圖2b所示的測試界面中顯示的實 際返回包括所述服務設備在調用所述增加接口的過程中實際生成的參數;圖2b所示的測 試界面中顯示的測試結論是異常測試結果,該異常測試結果中包括狀態碼不為200的提示 信息。通過顯示測試界面,可以使所述服務設備側的用戶直觀地了解所述接口是否可用及 是否滿足規范,無需所述應用設備側的專職人員協助測試,大大的降低了人力、溝通成本。
[0068] 本發明實施例中的應用設備通過接收服務設備發送的攜帶有待測試接口類型的 測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求到 所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應 的接口,所述應用設備再接收所述服務設備返回的接口響應結果,并根據所述接口響應結 果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備在調用所述接口時所 生成的;由此可見,應用設備和服務設備之間可以自動交互以完成接口測試,降低了人力、 溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
[0069] 請參見圖3,是本發明實施例提供的又一種接口測試方法的流程示意圖,所述方法 可以包括:
[0070] S301,服務設備發送攜帶有待測試接口類型的測試請求到應用設備,以使所述應 用設備根據所述待測試接口類型生成接口調用請求;
[0071] 具體的,所述應用設備可以包括互聯網產品對應的客戶端以及后臺服務器,所述 互聯網產品是集成了第三方服務的產品;所述服務設備可以包括第三方服務的提供商對 應的客戶端以及后臺服務器。在服務設備側,用戶可以在預設的可視化的接口測試界面中 輸入需要進行測試的接口類型,用戶輸入需要進行測試的接口類型并點擊確認后,所述服 務設備可以生成攜帶有待測試接口類型的測試請求,并將所述測試請求發送至所述應用設 備,所述應用設備再根據所述待測試接口類型生成接口調用請求。
[0072] 其中,所述服務設備中的第三方服務的接口可以包括增加接口、刪除接口、修改接 口、查看接口等等,例如,第三方服務提供了云空間(放在網絡上的存儲空間),那么當應用 設備調用第三方服務中的增加接口時,服務設備可以為應用設備側的用戶增加一個存儲空 間。所述第三方服務的各個接口對應的URL是相同的,但HTTP方法不同。
[0073] S302,所述服務設備接收所述應用設備發送的所述接口調用請求,并根據所述接 口調用請求調用與所述待測試接口類型對應的接口;
[0074] 具體的,所述應用設備生成所述接口調用請求后,所述服務設備可以接收所述應 用設備發送的所述接口調用請求,并根據所述接口調用請求調用與所述待測試接口類型對 應的接口。例如,用戶想要測試第三方服務中的刪除接口,用戶可以在所述服務設備側輸入 待測試接口類型為刪除接口,由所述服務設備發送攜帶有待測試接口類型為刪除接口的測 試請求到所述應用設備,再由所述應用設備生成與刪除接口對應的接口調用請求到所述服 務設備,即發送HTTP方法為DELETE的請求到第三方服務接口對應的URL,以調用第三方服 務中的刪除接口。
[0075] S303,所述服務設備在調用所述接口時生成接口響應結果,并發送所述接口響應 結果到所述應用設備,以使所述應用設備根據所述接口響應結果和預設的測試條件生成測 試結果;
[0076] 具體的,所述服務設備在調用所述接口的過程即為執行所述接口對應功能的過 程,例如,若所述服務設備調用的是刪除接口,則所述服務設備將從用戶項目中刪除指定插 件資源。所述服務設備在調用所述接口的過程中可以生成響應結果,并發送所述接口響應 結果到所述應用設備,所述響應結果可以包括響應時長、狀態碼、響應格式、響應ID等等, 此時,所述應用設備可以根據接收到的接口響應結果和預設的測試條件生成測試結果,所 述測試條件可以包括基礎數據完備、響應未超時、返回的狀態碼為200、響應格式為JS0N格 式、響應包含ID等等。例如,響應結果包含狀態碼和響應格式,所述測試條件包括返回的狀 態碼為200和響應格式為JS0N格式,若所述響應結果中的狀態碼也為200且響應格式也為 JS0N,則根據所述響應結果和所述測試條件所生成的測試結果將包含正常提示信息;若所 述響應結果中的狀態碼不為200和/或響應格式不為JS0N,則根據所述響應結果和所述測 試條件所生成的測試結果將包含錯誤提示信息以及問題定位提示信息。
[0077] 所述應用設備生成測試結果后,可以將所述測試結果再返回到所述服務設備,并 在所述服務設備的可視化的接口測試界面中顯示所述測試結果,使得所述服務設備側的用 戶可以直觀地了解所述接口是否可用及是否滿足規范,無需所述應用設備側的專職人員協 助測試,大大的降低了人力、溝通成本。
[0078] 本發明實施例中的應用設備通過接收服務設備發送的攜帶有待測試接口類型的 測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求到 所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應 的接口,所述應用設備再接收所述服務設備返回的接口響應結果,并根據所述接口響應結 果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備在調用所述接口時所 生成的;由此可見,應用設備和服務設備之間可以自動交互以完成接口測試,降低了人力、 溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
[0079] 請參見圖4,是本發明實施例提供的又一種接口測試方法的流程示意圖,所述方法 可以包括:
[0080] S401,服務設備發送攜帶有待測試接口類型的測試請求到應用設備,以使所述應 用設備根據所述待測試接口類型生成接口調用請求,所述測試請求還包括至少一個目標參 數類型;
[0081] 具體的,所述應用設備可以包括互聯網產品對應的客戶端以及后臺服務器,所述 互聯網產品是集成了第三方服務的產品;所述服務設備可以包括第三方服務的提供商對應 的客戶端以及后臺服務器。在服務設備側,用戶可以在預設的可視化的接口測試界面中輸 入需要進行測試的接口類型,用戶輸入需要進行測試的接口類型并點擊確認后,所述服務 設備可以生成攜帶有待測試接口類型的測試請求,并發送攜帶有待測試接口類型的測試請 求到應用設備,以使所述應用設備根據所述待測試接口類型生成接口調用請求。進一步的, 所述服務設備側的用戶還可以在所述可視化的接口測試界面中輸入至少一個目標參數類 型,使得所述服務設備所生成的測試請求可以包括所述待測試接口類型以及所述至少一個 目標參數類型。
[0082] 其中,所述服務設備中的第三方服務的接口可以包括增加接口、刪除接口、修改接 口、查看接口等等,例如,第三方服務提供了云空間(放在網絡上的存儲空間),那么當應用 設備調用第三方服務中的增加接口時,服務設備可以為應用設備側的用戶增加一個存儲空 間。所述第三方服務的各個接口對應的URL是相同的,但HTTP方法不同。
[0083] S402,所述服務設備接收所述應用設備發送的參數請求和所述接口調用請求,并 根據所述接口調用請求調用與所述待測試接口類型對應的接口,所述參數請求是由所述應 用設備將所述至少一個目標參數類型進行封裝所得到的;
[0084] 具體的,所述應用設備接收攜帶有所述待測試接口類型和所述至少一個目標參 數類型的測試請求后,所述應用設備可以將所述至少一個目標參數類型封裝成參數請求, 此時,所述應用設備可以將所述參數請求和所述接口調用請求發送到所述服務設備的指定 URL,使得所述服務設備可以接收所述應用設備發送的參數請求和所述接口調用請求,并根 據所述接口調用請求調用與所述待測試接口類型對應的接口。
[0085] S403,所述服務設備在調用所述接口時生成基本狀態參數以及與所述參數請求中 的所述至少一個目標參數類型分別對應的目標參數,并將所述基本狀態參數和所述目標參 數作為響應結果,并發送所述接口響應結果到所述應用設備;
[0086] 具體的,所述服務設備可以根據所述接口調用請求調用與所述待測試接口類型對 應的接口,并在調用所述接口時生成基本狀態參數以及與所述參數請求中的所述至少一個 目標參數類型分別對應的目標參數,并將所述基本狀態參數和所述目標參數作為響應結 果。例如,若所述服務設備調用的是刪除接口,則所述服務設備將從用戶項目中刪除指定插 件資源。所述服務設備在調用所述接口的過程中可以生成所述基本狀態參數和所述目標參 數;所述基本狀態參數可以包括響應時長、狀態碼、響應格式、響應ID等等,所述目標參數 包括與所述至少一個目標參數類型中各目標參數類型分別對應的參數,例如,所述目標參 數可以包括channel的參數數值、rsync_hosts_allow的參數數值、plan的參數數值。所述 服務設備生成所述基本狀態參數和所述目標參數后,再將所述基本狀態參數和所述目標參 數封裝成一個響應結果,并發送所述接口響應結果到所述應用設備。所述應用設備接收到 所述服務設備返回的接口響應結果后,所述應用設備可以檢測所述響應結果中的所述基本 狀態參數是否均滿足預設的測試條件,所述測試條件可以包括基礎數據完備、響應未超時、 返回的狀態碼為200、響應格式為JS0N格式、響應包含ID等等。例如,若響應結果中的所述 基本狀態參數包含狀態碼和響應格式,則所述應用設備需要檢測所述狀態碼是否為200,且 所述響應格式是否為JS0N格式。當所述應用設備檢測出所述基本狀態參數不均滿足預設 的測試條件時,所述應用設備將生成異常測試結果,所述異常測試結果將包含錯誤提示信 息以及問題定位提示信息;當所述應用設備檢測出所述基本狀態參數均滿足預設的測試條 件時,進一步判斷所述至少一個目標參數類型是否與所述目標參數一一對應,若判斷為是, 則生成正常測試結果,所述正常測試結果可以包含測試正常提示信息,若判斷為否,則依然 生成異常測試結果。
[0087] 所述應用設備生成測試結果后,可以將所述測試結果再返回到所述服務設備,并 在所述服務設備的可視化的接口測試界面中顯示所述測試結果,使得所述服務設備側的用 戶可以直觀地了解所述接口是否可用及是否滿足規范,無需所述應用設備側的專職人員協 助測試,大大的降低了人力、溝通成本。
[0088] 本發明實施例中的應用設備通過接收服務設備發送的攜帶有待測試接口類型的 測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求到 所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應 的接口,所述應用設備再接收所述服務設備返回的接口響應結果,并根據所述接口響應結 果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備在調用所述接口時所 生成的;由此可見,應用設備和服務設備之間可以自動交互以完成接口測試,降低了人力、 溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
[0089] 請參見圖5,是本發明實施例提供的一種應用設備的結構示意圖,所述應用設備1 可以包括:第一接收模塊11、調用請求發送模塊12、第二接收模塊13 ;
[0090] 所述第一接收模塊11,用于接收服務設備發送的攜帶有待測試接口類型的測試請 求,并根據所述待測試接口類型生成接口調用請求;
[0091] 具體的,所述應用設備1可以包括互聯網產品對應的客戶端以及后臺服務器,所 述互聯網產品是集成了第三方服務的產品;所述服務設備可以包括第三方服務的提供商對 應的客戶端以及后臺服務器。在服務設備側,用戶可以在預設的可視化的接口測試界面中 輸入需要進行測試的接口類型,用戶輸入需要進行測試的接口類型并點擊確認后,所述服 務設備可以生成攜帶有待測試接口類型的測試請求,此時,所述第一接收模塊11可以接收 所述服務設備發送的攜帶有待測試接口類型的測試請求,所述第一接收模塊11再根據所 述待測試接口類型生成接口調用請求。
[0092] 其中,所述服務設備中的第三方服務的接口可以包括增加接口、刪除接口、修改接 口、查看接口等等,例如,第三方服務提供了云空間(放在網絡上的存儲空間),那么當應用 設備1調用第三方服務中的增加接口時,服務設備可以為應用設備1側的用戶增加一個存 儲空間。所述第三方服務的各個接口對應的URL是相同的,但HTTP方法不同。
[0093] 所述調用請求發送模塊12,用于發送所述接口調用請求到所述服務設備,以使所 述服務設備根據所述接口調用請求調用與所述待測試接口類型對應的接口;
[0094] 具體的,生成所述接口調用請求后,所述調用請求發送模塊12可以發送所述接口 調用請求到所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接 口類型對應的接口。例如,用戶想要測試第三方服務中的刪除接口,用戶可以在所述服務設 備側輸入待測試接口類型為刪除接口,由所述服務設備發送攜帶有待測試接口類型為刪除 接口的測試請求到所述應用設備1,再由所述調用請求發送模塊12發送與刪除接口對應的 接口調用請求到所述服務設備,即所述調用請求發送模塊12發送HTTP方法為DELETE的請 求到第三方服務接口對應的URL,以調用第三方服務中的刪除接口。
[0095] 所述第二接收模塊13,用于接收所述服務設備返回的接口響應結果,并根據所述 接口響應結果和預設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所 述接口時所生成的;
[0096] 具體的,所述服務設備在調用所述接口的過程即為執行所述接口對應功能的過 程,例如,若所述服務設備調用的是刪除接口,則所述服務設備將從用戶項目中刪除指定插 件資源。所述服務設備在調用所述接口的過程中可以生成響應結果,所述響應結果可以包 括響應時長、狀態碼、響應格式、響應ID等等,此時,所述第二接收模塊13可以接收所述服 務設備返回的接口響應結果,并根據所述接口響應結果和預設的測試條件生成測試結果, 所述測試條件可以包括基礎數據完備、響應未超時、返回的狀態碼為200、響應格式為JSON 格式、響應包含ID等等。例如,響應結果包含狀態碼和響應格式,所述測試條件包括返回的 狀態碼為200和響應格式為JSON格式,若所述響應結果中的狀態碼也為200且響應格式也 為JSON,則所述第二接收模塊13根據所述響應結果和所述測試條件所生成的測試結果將 包含正常提示信息;若所述響應結果中的狀態碼不為200和/或響應格式不為JSON,則所 述第二接收模塊13根據所述響應結果和所述測試條件所生成的測試結果將包含錯誤提示 信息以及問題定位提示信息。
[0097] 所述第二接收模塊13生成測試結果后,可以將所述測試結果再返回到所述服務 設備,并在所述服務設備的可視化的接口測試界面中顯示所述測試結果,使得所述服務設 備側的用戶可以直觀地了解所述接口是否可用及是否滿足規范,無需所述應用設備1側的 專職人員協助測試,大大的降低了人力、溝通成本。
[0098] 進一步的,再請參見圖6,是本發明實施例提供的一種調用請求發送模塊12的結 構示意圖,所述調用請求發送模塊12可以包括:封裝單元121、請求發送單元122 ;
[0099] 所述封裝單元121,用于將所述至少一個目標參數類型封裝成參數請求;
[0100] 具體的,所述服務設備側的用戶還可以在所述可視化的接口測試界面中輸入至少 一個目標參數類型,使得所述服務設備所生成的測試請求可以包括所述待測試接口類型以 及所述至少一個目標參數類型。所述第一接收模塊11接收攜帶有所述待測試接口類型和 所述至少一個目標參數類型的測試請求后,所述封裝單元121可以將所述至少一個目標參 數類型封裝成參數請求。例如,若所述至少一個目標參數類型包括channel、rsync_hosts_ allow、plan,則所述封裝單元121對所述至少一個目標參數類型進行封裝后得到的參數請 求可以為:
[0101]
[0102] 所述請求發送單元122,用于發送所述參數請求和所述接口調用請求到所述服務 設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對應的接口, 并在調用所述接口時生成基本狀態參數以及與所述參數請求中的所述至少一個目標參數 類型分別對應的目標參數,并將所述基本狀態參數和所述目標參數作為響應結果;
[0103] 具體的,生成所述參數請求和所述接口調用請求后,所述請求發送單元122可以 發送所述參數請求和所述接口調用請求到所述服務設備,以使所述服務設備根據所述接口 調用請求調用與所述待測試接口類型對應的接口,并在調用所述接口時生成基本狀態參數 以及與所述參數請求中的所述至少一個目標參數類型分別對應的目標參數,并將所述基本 狀態參數和所述目標參數作為響應結果。其中,所述請求發送單元122可以將所述參數請 求和所述接口調用請求發送到所述服務設備的指定URL,使得所述服務設備可以接收到所 述接口調用請求和所述參數請求。所述服務設備在調用所述接口的過程即為執行所述接 口對應功能的過程,例如,若所述服務設備調用的是刪除接口,則所述服務設備將從用戶項 目中刪除指定插件資源。所述服務設備在調用所述接口的過程中可以生成所述基本狀態 參數和所述目標參數;所述基本狀態參數可以包括響應時長、狀態碼、響應格式、響應ID等 等,所述目標參數包括與所述至少一個目標參數類型中各目標參數類型分別對應的參數, 例如,所述目標參數可以包括channel的參數數值、rsync_hosts_allow的參數數值、plan 的參數數值。所述服務設備生成所述基本狀態參數和所述目標參數后,再將所述基本狀態 參數和所述目標參數封裝成一個響應結果。
[0104] 進一步的,再請參見圖7,是本發明實施例提供的一種第二接收模塊13的結構示 意圖,所述第二接收模塊13可以包括:結果接收單元131、檢測單元132、生成單元133、判 斷單元134 ;
[0105] 所述結果接收單元131,用于接收所述服務設備返回的接口響應結果;
[0106] 所述檢測單元132,用于檢測所述響應結果中的所述基本狀態參數是否均滿足預 設的測試條件;
[0107] 所述生成單元133,用于若所述檢測單元132檢測出不是均滿足所述測試條件,則 生成異常測試結果;
[0108] 所述判斷單元134,用于若所述檢測單元132檢測出均滿足所述測試條件,則進一 步判斷所述至少一個目標參數類型是否與所述目標參數一一對應;
[0109] 所述生成單元133,還用于若所述判斷單元134判斷出所述至少一個目標參數類 型不與所述目標參數一一對應,則生成異常測試結果;
[0110] 所述生成單元133,還用于若所述判斷單元134判斷出所述至少一個目標參數類 型與所述目標參數一一對應,則生成正常測試結果。
[0111] 所述結果接收單元131、所述檢測單元132、所述生成單元133以及所述判斷單元 134的具體執行過程可以參見上述圖2對應實施例中的S204至S208,這里不再進行贅述。
[0112] 本發明實施例中的應用設備1通過接收服務設備發送的攜帶有待測試接口類型 的測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求 到所述服務設備,以使所述服務設備根據所述接口調用請求調用與所述待測試接口類型對 應的接口,所述應用設備1再接收所述服務設備返回的接口響應結果,并根據所述接口響 應結果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備在調用所述接口 時所生成的;由此可見,應用設備1和服務設備之間可以自動交互以完成接口測試,降低了 人力、溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
[0113] 請參見圖8,是本發明實施例提供的一種服務設備的結構示意圖,所述服務設備2 可以包括:測試請求發送模塊21、調用請求接收模塊22、生成發送模塊23 ;
[0114] 所述測試請求發送模塊21,用于發送攜帶有待測試接口類型的測試請求到應用設 備,以使所述應用設備根據所述待測試接口類型生成接口調用請求;
[0115] 所述調用請求接收模塊22,用于接收所述服務設備2發送的所述接口調用請求, 并根據所述接口調用請求調用與所述待測試接口類型對應的接口;
[0116] 所述生成發送模塊23,用于在調用所述接口時生成接口響應結果,并發送所述接 口響應結果到所述應用設備,以使所述應用設備根據所述接口響應結果和預設的測試條件 生成測試結果;
[0117] 具體的,當所述測試請求還包括至少一個目標參數類型時,則所述調用請求接收 模塊22具體用于接收所述應用設備發送的參數請求和所述接口調用請求,并根據所述接 口調用請求調用與所述待測試接口類型對應的接口;所述參數請求是由所述應用設備將所 述至少一個目標參數類型進行封裝所得到的;且所述生成發送模塊23具體用于在調用所 述接口時生成基本狀態參數以及與所述參數請求中的所述至少一個目標參數類型分別對 應的目標參數,并將所述基本狀態參數和所述目標參數作為響應結果,并發送所述接口響 應結果到所述應用設備。
[0118] 所述測試請求發送模塊21、所述調用請求接收模塊22以及所述生成發送模塊23 的具體執行過程可以參見上述圖3對應實施例的S301至S303,以及上述圖4對應實施例中 的S401至S403,這里不再進行贅述。
[0119] 本發明實施例中的應用設備通過接收服務設備2發送的攜帶有待測試接口類型 的測試請求,可以根據所述待測試接口類型生成接口調用請求,并發送所述接口調用請求 到所述服務設備2,以使所述服務設備2根據所述接口調用請求調用與所述待測試接口類 型對應的接口,所述應用設備再接收所述服務設備2返回的接口響應結果,并根據所述接 口響應結果和預設的測試條件生成測試結果,所述響應結果是由所述服務設備2在調用所 述接口時所生成的;由此可見,應用設備和服務設備2之間可以自動交互以完成接口測試, 降低了人力、溝通成本,而且在測試過程中無需再編寫測試代碼,提高了接口測試的效率。
[0120] 本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以 通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質 中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁 碟、光盤、只讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。
[0121] 以上所揭露的僅為本發明較佳實施例而已,當然不能以此來限定本發明之權利范 圍,因此依本發明權利要求所作的等同變化,仍屬本發明所涵蓋的范圍。
【主權項】
1. 一種接口測試方法,其特征在于,包括: 應用設備接收服務設備發送的攜帶有待測試接口類型的測試請求,并根據所述待測試 接口類型生成接口調用請求; 所述應用設備發送所述接口調用請求到所述服務設備,以使所述服務設備根據所述接 口調用請求調用與所述待測試接口類型對應的接口; 所述應用設備接收所述服務設備返回的接口響應結果,并根據所述接口響應結果和預 設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所述接口時所生成 的。2. 如權利要求1所述的方法,其特征在于,所述測試請求還包括至少一個目標參數類 型, 則所述應用設備發送所述接口調用請求到所述服務設備,以使所述服務設備根據所述 接口調用請求調用與所述待測試接口類型對應的接口,包括: 所述應用設備將所述至少一個目標參數類型封裝成參數請求; 發送所述參數請求和所述接口調用請求到所述服務設備,以使所述服務設備根據所述 接口調用請求調用與所述待測試接口類型對應的接口,并在調用所述接口時生成基本狀態 參數以及與所述參數請求中的所述至少一個目標參數類型分別對應的目標參數,并將所述 基本狀態參數和所述目標參數作為響應結果; 其中,所述待測試接口類型和至少一個目標參數類型均是由所述服務設備預先在可視 化的測試界面中所輸入的。3. 如權利要求2所述的方法,其特征在于,所述應用設備接收所述服務設備返回的接 口響應結果,并根據所述接口響應結果和預設的測試條件生成測試結果,包括: 所述應用設備接收所述服務設備返回的接口響應結果; 檢測所述響應結果中的所述基本狀態參數是否均滿足預設的測試條件; 若檢測出不是均滿足所述測試條件,則生成異常測試結果; 若檢測出均滿足所述測試條件,則進一步判斷所述至少一個目標參數類型是否與所述 目標參數 對應; 若判斷出所述至少一個目標參數類型不與所述目標參數一一對應,則生成異常測試結 果; 若判斷出所述至少一個目標參數類型與所述目標參數一一對應,則生成正常測試結 果。4. 一種接口測試方法,其特征在于,包括: 服務設備發送攜帶有待測試接口類型的測試請求到應用設備,以使所述應用設備根據 所述待測試接口類型生成接口調用請求; 所述服務設備接收所述應用設備發送的所述接口調用請求,并根據所述接口調用請求 調用與所述待測試接口類型對應的接口; 所述服務設備在調用所述接口時生成接口響應結果,并發送所述接口響應結果到所述 應用設備,以使所述應用設備根據所述接口響應結果和預設的測試條件生成測試結果。5. 如權利要求4所述的方法,其特征在于,所述測試請求還包括至少一個目標參數類 型, 則所述服務設備接收所述應用設備發送的所述接口調用請求,并根據所述接口調用請 求調用與所述待測試接口類型對應的接口,具體包括: 所述服務設備接收所述應用設備發送的參數請求和所述接口調用請求,并根據所述接 口調用請求調用與所述待測試接口類型對應的接口,所述參數請求是由所述應用設備將所 述至少一個目標參數類型進行封裝所得到的; 則所述服務設備在調用所述接口時生成接口響應結果,并發送所述接口響應結果到所 述應用設備,具體包括: 所述服務設備在調用所述接口時生成基本狀態參數以及與所述參數請求中的所述至 少一個目標參數類型分別對應的目標參數,并將所述基本狀態參數和所述目標參數作為響 應結果,并發送所述接口響應結果到所述應用設備; 其中,所述待測試接口類型和至少一個目標參數類型均是由所述服務設備預先在可視 化的測試界面中所輸入的。6. -種應用設備,其特征在于,包括: 第一接收模塊,用于接收服務設備發送的攜帶有待測試接口類型的測試請求,并根據 所述待測試接口類型生成接口調用請求; 調用請求發送模塊,用于發送所述接口調用請求到所述服務設備,以使所述服務設備 根據所述接口調用請求調用與所述待測試接口類型對應的接口; 第二接收模塊,用于接收所述服務設備返回的接口響應結果,并根據所述接口響應結 果和預設的測試條件生成測試結果;所述響應結果是由所述服務設備在調用所述接口時所 生成的。7. 如權利要求6所述的應用設備,其特征在于,所述測試請求還包括至少一個目標參 數類型, 則調用請求發送模塊包括: 封裝單元,用于將所述至少一個目標參數類型封裝成參數請求; 請求發送單元,用于發送所述參數請求和所述接口調用請求到所述服務設備,以使所 述服務設備根據所述接口調用請求調用與所述待測試接口類型對應的接口,并在調用所述 接口時生成基本狀態參數以及與所述參數請求中的所述至少一個目標參數類型分別對應 的目標參數,并將所述基本狀態參數和所述目標參數作為響應結果; 其中,所述待測試接口類型和至少一個目標參數類型均是由所述服務設備預先在可視 化的測試界面中所輸入的。8. 如權利要求7所述的應用設備,其特征在于,所述第二接收模塊包括: 結果接收單元,用于接收所述服務設備返回的接口響應結果; 檢測單元,用于檢測所述響應結果中的所述基本狀態參數是否均滿足預設的測試條 件; 生成單元,用于若所述檢測單元檢測出不是均滿足所述測試條件,則生成異常測試結 果; 判斷單元,用于若所述檢測單元檢測出均滿足所述測試條件,則進一步判斷所述至少 一個目標參數類型是否與所述目標參數一一對應; 所述生成單元,還用于若所述判斷單元判斷出所述至少一個目標參數類型不與所述目 標參數一一對應,則生成異常測試結果; 所述生成單元,還用于若所述判斷單元判斷出所述至少一個目標參數類型與所述目標 參數一一對應,則生成正常測試結果。9. 一種服務設備,其特征在于,包括: 測試請求發送模塊,用于發送攜帶有待測試接口類型的測試請求到應用設備,以使所 述應用設備根據所述待測試接口類型生成接口調用請求; 調用請求接收模塊,用于接收所述服務設備發送的所述接口調用請求,并根據所述接 口調用請求調用與所述待測試接口類型對應的接口; 生成發送模塊,用于在調用所述接口時生成接口響應結果,并發送所述接口響應結果 到所述應用設備,以使所述應用設備根據所述接口響應結果和預設的測試條件生成測試結 果。10. 如權利要求9所述的服務設備,其特征在于,所述測試請求還包括至少一個目標參 數類型, 則所述調用請求接收模塊,具體用于接收所述應用設備發送的參數請求和所述接口調 用請求,并根據所述接口調用請求調用與所述待測試接口類型對應的接口;所述參數請求 是由所述應用設備將所述至少一個目標參數類型進行封裝所得到的; 則所述生成發送模塊,具體用于在調用所述接口時生成基本狀態參數以及與所述參數 請求中的所述至少一個目標參數類型分別對應的目標參數,并將所述基本狀態參數和所述 目標參數作為響應結果,并發送所述接口響應結果到所述應用設備; 其中,所述待測試接口類型和至少一個目標參數類型均是由所述服務設備預先在可視 化的測試界面中所輸入的。
【文檔編號】H04L29/08GK105897497SQ201510426772
【公開日】2016年8月24日
【申請日】2015年7月20日
【發明人】李澤揚, 盧軒華
【申請人】廣州華多網絡科技有限公司