新四季網

網絡應用接口的測試方法、裝置及電子設備與流程

2023-06-10 17:32:36


本發明涉及測試
技術領域:
,具體涉及一種網絡應用接口的測試方法、裝置及電子設備。
背景技術:
:隨著網際網路技術的發展,網際網路服務端的接口測試是一項非常重要的測試環節。現有技術中通過構造客戶端請求,利用http協議獲取返回結果,然後客戶端通過charles等協議工具定向到目標測試伺服器,實現協議功能,然後對比客戶端的響應結果和構造請求返回的結果是否一致,從而判斷測試是否成功。然而,兩個不同請求返回的結果在很大程度上會存在不一致,影響自動化測試的準確程度。技術實現要素:本發明實施例提供一種網絡應用接口的測試方法、裝置及電子設備,用於解決基於http協議客戶端發出的請求和預期請求的返回結果異步,導致測試結果準確率低的問題。本發明實施例第一方面提供一種網絡應用接口的測試方法,包括:接收網絡應用接口發送的第一http請求;根據所述第一http請求生成第二http請求;向目標測試伺服器發送所述第二http請求;接收由所述目標測試伺服器發送的根據http協議獲取所述第二http請求對應的第二響應結果,並保存所述第二響應結果;接收由所述網絡應用接口根據所述http協議獲取所述第一http請求對應的第一響應結果;當所述第一響應結果與所述第二響應結果匹配時,確定所述網絡應用接口測試成功。結合本發明實施例第一方面,在本發明實施例第一方面的第一種可能的實現方式中,所述根據所述第一http請求生成第二http請求包括:將所述第一http請求分為域名和非域名兩部分,根據所述第一http請求中的非域名部分和所述目標測試伺服器的域名生成第二http請求。結合本發明實施例第一方面,在本發明實施例第一方面的第二種可能的實現方式中,在所述接收由所述網絡應用接口根據所述http協議獲取所述第一http請求對應的第一響應結果之後,所述方法還包括:在所述第二響應結果中查找第二驗證信息,所述第二驗證信息包括所述第二http請求對應的網絡地址;在所述第一響應結果中查找與所述第二驗證信息對應的第一驗證信息,當所述第一驗證信息與所述第二驗證信息匹配時,確定所述第一響應結果與所述第二響應結果匹配。結合本發明實施例第一方面的第二種可能的實現方式,在本發明實施例第一方面的第三種可能的實現方式中,所述方法還包括:當所述第一驗證信息與所述第二驗證信息不匹配時,生成提示信息;接收所述網絡應用接口發送的針對所述提示信息生成的所述第一http請求。結合本發明實施例第一方面的第一種可能的實現方式,在本發明實施例第一方面的第四種可能的實現方式中,在所述根據所述第一http請求中的非域名部分和所述目標測試伺服器的域名生成第二http請求之前,所述方法還包括:當存在多個測試伺服器時,在所述多個測試伺服器中選擇最優網絡帶寬的測試伺服器作為所述目標測試伺服器;根據所述測試伺服器與所述域名之間的映射關係查找所述目標測試伺服器的域名。本發明實施例第二方面提供一種網絡應用接口的測試裝置,包括:第一接收單元,用於接收網絡應用接口發送的第一http請求;生成單元,用於根據所述第一http請求生成第二http請求;第一發送單元,用於向目標測試伺服器發送所述第二http請求;第二接收單元,用於接收由所述目標測試伺服器發送的根據http協議獲取所述第二http請求對應的第二響應結果,並保存所述第二響應結果;第三接收單元,用於接收由所述網絡應用接口根據所述http協議獲取所述第一http請求對應的第一響應結果;確定單元,用於當所述第一響應結果與所述第二響應結果匹配時,確定所述網絡應用接口測試成功。結合本發明實施例第二方面,在本發明實施例第二方面的第一種可能的實現方式中,所述裝置還包括:所述生成單元,具體用於將所述第一http請求分為域名和非域名兩部分,根據所述第一http請求中的非域名部分和所述目標測試伺服器的域名生成第二http請求。結合本發明實施例第二方面,在本發明實施例第二方面的第二種可能的實現方式中,所述裝置還包括:所述確定單元,具體用於在所述第二響應結果中查找第二驗證信息,所述第二驗證信息包括所述第二http請求對應的網絡地址;在所述第一響應結果中查找與所述第二驗證信息對應的第一驗證信息,當所述第一驗證信息與所述第二驗證信息匹配時,確定所述第一響應結果與所述第二響應結果匹配。結合本發明實施例第二方面的第二種可能的實現方式,在本發明實施例第二方面的第三種可能的實現方式中,所述裝置還包括:提示單元,用於當所述第一驗證信息與所述第二驗證信息不匹配時,生成提示信息;所述第一接收單元,還用於接收所述網絡應用接口發送的針對所述提示信息生成的所述第一http請求。結合本發明實施例第二方面的第一種可能的實現方式,在本發明實施例第二方面的第四種可能的實現方式中,所述裝置還包括:選擇單元,用於當存在多個測試伺服器時,在所述多個測試伺服器中選擇最優網絡帶寬的測試伺服器作為所述目標測試伺服器;查找單元,用於根據所述測試伺服器與所述域名之間的映射關係查找所述目標測試伺服器的域名。本發明實施例第三方面提供了一種電子設備,包括:殼體、處理器、存儲器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內部,處理器和存儲器設置在電路板上;電源電路,用於為電子設備的各個電路或器件供電;存儲器用於存儲可執行程序代碼;處理器通過讀取存儲器中存儲的可執行程序代碼來運行與可執行程序代碼對應的程序,以用於執行以下步驟:接收網絡應用接口發送的第一http請求;根據所述第一http請求生成第二http請求;向目標測試伺服器發送所述第二http請求;接收由所述目標測試伺服器發送的根據http協議獲取所述第二http請求對應的第二響應結果,並保存所述第二響應結果;接收由所述網絡應用接口根據所述http協議獲取所述第一http請求對應的第一響應結果;當所述第一響應結果與所述第二響應結果匹配時,確定所述網絡應用接口測試成功。本發明實施例第四方面提供了一種存儲介質,其中,該存儲介質用於存儲應用程式,所述應用程式用於在運行時執行本發明實施例第一方面提供的一種網絡應用接口的測試方法。本發明實施例第五方面提供了一種應用程式,其中,該應用程式用於在運行時執行本發明實施例第一方面提供的一種網絡應用接口的測試方法。本發明實施例中,當接收到網絡應用接口發送的第一http請求後,將第一http請求中的域名修改為目標測試伺服器的域名得到第二http請求;然後向目標測試伺服器發送第二http請求,接收由目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果,並保存第二響應結果,獲取網絡應用接口根據http協議獲取第一http請求對應的第一響應結果,當第一響應結果與第二響應結果匹配時,測試成功。同時運用socket協議和http協議,接收目標測試伺服器返回的第二響應結果,確保基於http協議客戶端發出的請求和預期請求的返回結果一致,可保存目標測試伺服器返回的第二響應結果,從而提高了測試結果的準確性。附圖說明為了更清楚地說明本發明實施例中的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1是本發明實施例提供的一種網絡應用接口的測試方法的流程圖;圖2是本發明實施例提供的一種網絡應用接口的測試方法的場景示意圖;圖3是socket協議的連接過程的流程圖;圖4是本發明實施例提供的另一種網絡應用接口的測試方法的流程圖;圖5是本發明實施例提供的一種網絡應用接口的測試裝置的結構圖;圖6是本發明實施例提供的另一種網絡應用接口的測試裝置的結構圖;圖7是本發明實施例提供的一種電子設備的結構圖。具體實施方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。本發明的說明書和權利要求書及附圖中的術語「第一」、「第二」和「第三」等是用於區別不同對象,而不是用於描述特定順序。此外,術語「包括」和「具有」以及它們任何變形,意圖在於覆蓋不排他的包含。例如包含了一系列步驟或單元的過程、方法、系統、產品或設備沒有限定於已列出的步驟或單元,而是可選地還包括沒有列出的步驟或單元,或可選地還包括對於這些過程、方法、產品或設備固有的其它步驟或單元。在本文中提及「實施例」意味著,結合實施例描述的特定特徵、結構或特性可以包含在本發明的至少一個實施例中。在說明書中的各個位置出現該短語並不一定均是指相同的實施例,也不是與其它實施例互斥的獨立的或備選的實施例。本領域技術人員顯式地和隱式地理解的是,本文所描述的實施例可以與其它實施例相結合。本發明實施例所描述的電子設備可以包括智慧型手機(如android手機)、平板電腦、掌上電腦、筆記本電腦、移動網際網路設備(mid,mobileinternetdevices)或穿戴式設備等基於socket協議的電子設備,上述電子設備僅是舉例,而非窮舉,包含但不限於上述電子設備。本發明實施例提供一種網絡應用接口的測試方法、裝置及電子設備,用於基於socket協議無法正確保存測試伺服器的響應結果的技術問題。以下分別進行詳細說明。請參閱圖1,圖1是本發明實施例提供的一種網絡應用接口的測試方法的流程圖。如圖1所示,該方法可以包括以下步驟。步驟101、接收網絡應用接口發送的第一http請求。本發明實施例中,網絡應用接口可以是網際網路
技術領域:
中任一應用程式中用於進行數據交換的接口,例如:用戶終端與網絡側(例如:伺服器)進行數據交換的接口,或者伺服器與用戶側(例如:用戶終端)進行數據交換的接口。上述應用程式包括但不限於瀏覽器應用程式、聊天應用程式、遊戲應用程式、音視頻播放應用程式等等。http協議(hypertexttransferprotocol,超文本傳輸協議)是用於從www(worldwideweb,全球資訊網)伺服器傳輸超文本到本地瀏覽器的傳送協議。它可以使瀏覽器更加高效,使網絡傳輸減少。它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示(如文本先於圖形)等。本發明實施例中,http請求是指從客戶端到伺服器端的請求消息,包括消息首行中,對資源的請求方法、資源的標識符及使用的協議。將socket接口接收到網絡應用接口發送的http請求作為第一http請求。需要說明的是,第一http請求包含的請求方法、資源的標識符及使用的協議由應用程式預設編程算法決定,本實施例中對於實現socket協議的程式語言不作限定,可選的為python。舉例來說,如圖2所示的應用界面,網絡應用接口包括輸入數字的輸入框和「loadad」按鈕,當用戶在輸入數字的輸入框中輸入「128103」後,點擊「loadad」按鈕時,則第一http請求為向目標測試伺服器請求上傳一個編號為「128103」的廣告。步驟102、根據第一http請求生成第二http請求。可選的,將第一http請求分為域名和非域名兩部分,根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求。通過修改第一http請求的域名為目標測試伺服器的域名,使得第二http請求的域名為目標測試伺服器的域名,從而避免了使用socket協議導致返回的結果為亂碼,且確保目標測試伺服器返回的響應結果為客戶端發送的請求,提高測試結果的準確性。舉例來說,假設第一http請求為「http://www.xxx.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,則域名:「http://www.xxx.com.cn」,非域名為:「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則第二http請求為「http://www.xxx102.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」。步驟103、向目標測試伺服器發送第二http請求。網絡上的兩個程序通過一個雙向的通信連接實現數據的交換,這個連接的一端稱為一個socket,通常也稱作「套接字」,用於描述ip地址和埠,是一個通信鏈的句柄,可以用來實現不同虛擬機或不同計算機之間的通信。socket協議可以說是對http協議的加強,它不僅是對http協議進行協議,而是對所有向外的連接進行協議。socket接口是傳輸控制協議/網際網路互聯協議(transmissioncontrolprotocol/internetprotocol,tcp/ip)網絡的api(applicationprogramminginterface,應用程式編程接口),socket接口定義了許多函數或例程,程式設計師可以用它們來開發tcp/ip網絡上的應用程式。網絡的socket數據傳輸是一種特殊的輸入/輸出埠(i/o,input/output)。socket協議的連接過程可以分為三個步驟:伺服器監聽,客戶端請求,連接確認,具體如圖3所示,綁定地址和埠;監聽訪問該地址和埠的請求;建立連接;接收連接並返迴響應結果。具體的實現代碼如下所示:s=socket.socket(socket.af_inet,socket.sock_stream);//初始化協議s.bind(addr);//綁定地址和埠s.listen(10);//監聽訪問這個地址和埠的請求s.connect(to_addr);//建立連接s.accept;//接收連接並返回s.close;//關閉協議地址是指網際網路協議地址(internetprotocoladdress,ipaddress)。ip地址是ip協議提供的一種統一的地址格式,它為網際網路上的每一個網絡和每一臺主機分配一個邏輯地址,以此來屏蔽物理地址的差異。埠就是指的是socket接口,各種服務採用不同的埠分別提供不同的服務,比如:通常tcp/ip協議規定網絡連接採用80號埠,文件傳輸協議(filetransferprotocol,ftp)採用21號埠等,而郵件伺服器是採用25號埠。域名(domainname),是由一串用點分隔的名字組成的internet上某一臺計算機或計算機組的名稱,用於在數據傳輸時標識計算機的電子方位(有時也指地理位置,地理上的域名,指代有行政自主權的一個地方區域)。域名的目的是便於記憶和溝通的一組伺服器的地址(網站,電子郵件,ftp等)。域名的ip地址綁定了以後,當別人訪問這個域名的時候就可以通過dns解析成ip,再進行訪問。ip地址與域名有對應的關係。某個ip,對應的域名只有一個。由於socket協議是底層協議,則socket協議返回的響應結果為亂碼,將該響應結果處理成可以識別的編碼很複雜。在接收到第一http請求後,不是直接將第一http請求轉發給測試服務端,而是將第一http請求中的域名修改為目標測試伺服器的域名,得到第二http請求。也就是說通過目標測試伺服器實現第二http請求,從而避免了使用socket協議導致返回的結果為亂碼,且確保目標測試伺服器返回的響應結果為客戶端發送的請求,提高測試結果的準確性。舉例來說,假設第一http請求的域名為「http://www.xxx.com.cn」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則目標測試伺服器接收的第二http請求的域名為「http://www.xxx102.com.cn」。步驟104、接收由目標測試伺服器發送的根據http協議獲取第二http請求對應的第二響應結果,並保存第二響應結果。http協議是一個應用層協議,由請求和響應構成,是一個標準的客戶端伺服器模型。基於http協議的客戶/伺服器模式的信息交換過程,它分四個過程:建立連接、發送請求信息、發送響應信息、關閉連接。在本實施例中,目標測試伺服器接收第二http請求後,根據http協議獲取第二http請求對應的第二響應結果。且將第二響應結果進行保存,從而解決了採用socket協議無法將伺服器的響應結果進行保存的弊端。步驟105、接收由網絡應用接口根據http協議獲取第一http請求對應的第一響應結果。在本實施例中,網絡應用接口根據http協議獲取第一http請求對應的第一響應結果與目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果的步驟一致,在此不再贅述。步驟106、當第一響應結果與第二響應結果匹配時,確定網絡應用接口測試成功。可選的,在第二響應結果中查找第二驗證信息,第二驗證信息包括第二http請求對應的網絡地址;在第一響應結果中查找與第二驗證信息對應的第一驗證信息,當第一驗證信息與第二驗證信息匹配時,確定第一響應結果與第二響應結果匹配。其中,驗證信息可以是與http請求對應的編號id、命名name、文本名text、標題title、網絡地址、樣式數據中的顏色color、字體font、對齊方式等等。其中編號id、命名name、文本名text和標題title對響應結果進行標識,位置數據表示響應結果在應用頁面上的位置信息,通常用頂點坐標(x、y)、寬度width和高度height來表示。樣式數據表示響應結果的樣式屬性,例如顏色、文字的字體、對齊方式和四周間隔的距離等等。其中,第二驗證信息和第一驗證信息僅用於區別。本實施例對於存儲響應結果的文本形式不做限定,可選的為txt格式,存儲驗證信息以json格式表示,按照最簡單的形式表示「名稱/值對」的組合。上述網絡地址可以是統一資源定位符(uniformresourcelocator,url),它包含的信息指出文件的位置以及瀏覽器應該怎麼處理它。舉例來說,假設第一http請求的域名為「http://www.xxx.com.cn」,目標測試伺服器的域名為「http://www.xxx102.com.cn」。如圖2所示的應用場景中,當用戶在輸入數字的輸入框中輸入「128103」後,點擊「loadad」按鈕時,向socket發送第一http請求為向目標測試伺服器請求上傳一個編號為「128103」的廣告;socket接收到第一http請求後將請求域名「http://www.xxx.com.cn」修改為目標測試伺服器域名「http://www.xxx102.com.cn」得到第二http請求;目標測試伺服器根據http協議處理第二http請求得到第二響應結果,並在guanggao.txt文件中保存第二響應結果,假設guanggao.txt中的第二驗證信息包括:("pic_url":"http://orionimg.adkmob.com/liehu/20151230/1451445246mm841_l.png","title":"mobilestrike");此外將第二響應結果轉發給網絡應用接口,獲取該網絡應用接口根據http協議處理第一http請求得到的第一響應結果,當第一響應結果的第一驗證信息中的"pic_url"與"title"對應的值與第二響應結果中的值匹配時,確定網絡應用接口測試成功,則手機顯示的廣告跟guanggao.txt保存的一致。在圖1所描述的網絡應用接口的測試方法中,當接收到網絡應用接口發送的第一http請求後,將第一http請求中的域名修改為目標測試伺服器的域名得到第二http請求。然後向目標測試伺服器發送第二http請求,接收由目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果,保存第二響應結果,獲取網絡應用接口根據http協議獲取第一http請求對應的第一響應結果,當第一響應結果與第二響應結果匹配時,測試成功。同時運用socket協議和http協議,接收目標測試伺服器返回的第二響應結果,確保基於http協議客戶端發出的請求和預期請求的返回結果一致,可保存目標測試伺服器返回的第二響應結果,從而提高了測試結果的準確性。請參閱圖4,圖4是本發明實施例提供的另一種網絡應用接口的測試方法的流程圖。如圖4所示,該方法可以包括以下步驟。步驟201、接收網絡應用接口發送的第一http請求。其中,上述步驟201的具體描述可參見上述步驟101的相關描述,在此不再贅述。步驟202、當存在多個測試伺服器時,在多個測試伺服器中選擇最優網絡帶寬的測試伺服器作為目標測試伺服器。本實施例中,根據socket對網絡應用接口和測試伺服器之間的測試請求和響應結果進行轉發,不需要耗費資源來建立與網絡應用接口之間的通信連接,從而降低了測試工具的負載,提高了測試的穩定性。本實施例中,當socket與多個測試伺服器建立連接時,獲取每一個與socket連接的測試伺服器的網絡帶寬,選擇最優網絡帶寬的測試伺服器作為目標測試伺服器,可減小測試伺服器的壓力,從而提高測試效率。舉例來說,假設與socket連接的測試伺服器的編號為1000、1001和1002,則獲取每一個測試伺服器的網絡帶寬,其中,編號為1000的測試伺服器的網絡帶寬為20%,編號為1001的測試伺服器的網絡帶寬為50%,編號為1002的測試伺服器的網絡帶寬為80%,則將編號為1000的測試伺服器作為目標測試伺服器。步驟203、根據測試伺服器與域名之間的映射關係查找目標測試伺服器的域名。本實施例中,通過對建立的測試伺服器與域名之間的映射關係進行管理,可以在不同的測試項目中,實現對不同測試伺服器與不同網絡應用接口之間的統一管理和調度,打破了實施工具之間存在的壁壘。根據測試伺服器與域名之間的映射關係來查找目標測試伺服器的域名,可提高查找效率。舉例來說,如下表1所示,當目標測試伺服器的編號為1000時,則根據測試伺服器與域名之間的映射關係查表可得目標測試伺服器的域名為「http://www.xxx1000.com.cn」。表1測試伺服器域名1000http://www.xxx1000.com.cn1001http://www.xxx1001.com.cn1002http://www.xxx1002.com.cn…………步驟204、將第一http請求分為域名和非域名兩部分,根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求。通過修改第一http請求的域名為目標測試伺服器的域名,使得第二http請求的域名為目標測試伺服器的域名,從而避免了使用socket協議導致返回的結果為亂碼,且確保目標測試伺服器返回的響應結果為客戶端發送的請求,提高測試結果的準確性。舉例來說,假設第一http請求為「http://www.xxx.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,則域名:「http://www.xxx.com.cn」,非域名為:「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則第二http請求為「http://www.xxx102.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」。步驟205、向目標測試伺服器發送第二http請求。步驟206、接收由目標測試伺服器發送的根據http協議獲取第二http請求對應的第二響應結果,並保存第二響應結果。步驟207、接收由網絡應用接口根據http協議獲取第一http請求對應的第一響應結果。其中,上述步驟205-207的具體描述可參見上述步驟103-105的相關描述,在此不再贅述。步驟208、判斷第一響應結果與第二響應結果是否匹配。其中,若是,執行步驟209;若否,執行完步驟210後,再執行步驟202。在本實施例中,驗證信息可以是與http請求對應的編號id、命名name、文本名text、標題title、網絡地址、樣式數據中的顏色color、字體font、對齊方式等等。其中編號id、命名name、文本名text和標題title對響應結果進行標識,位置數據表示響應結果在應用頁面上的位置信息,通常用頂點坐標(x、y)、寬度width和高度height來表示。樣式數據表示響應結果的樣式屬性,例如顏色、文字的字體、對齊方式和四周間隔的距離等等。其中,第二驗證信息和第一驗證信息僅用於區別。本實施例對於存儲響應結果的文本形式不做限定,可選的為txt格式,存儲驗證信息以json格式表示,按照最簡單的形式表示「名稱/值對」的組合。上述網絡地址可以是統一資源定位符(uniformresourcelocator,url),它包含的信息指出文件的位置以及瀏覽器應該怎麼處理它。舉例來說,假設第一http請求的域名為「http://www.xxx.com.cn」,目標測試伺服器的域名為「http://www.xxx102.com.cn」。如圖2所示的應用場景中,當用戶在輸入數字的輸入框中輸入「128103」後,點擊「loadad」按鈕時,向socket發送第一http請求為向目標測試伺服器請求上傳一個編號為「128103」的廣告;socket接收到第一http請求後將請求域名「http://www.xxx.com.cn」修改為目標測試伺服器域名「http://www.xxx102.com.cn」得到第二http請求;目標測試伺服器根據http協議處理第二http請求得到第二響應結果,並在guanggao.txt文件中保存第二響應結果,假設guanggao.txt中的第二驗證信息包括:("pic_url":"http://orionimg.adkmob.com/liehu/20151230/1451445246mm841_l.png","title":"mobilestrike");此外將第二響應結果轉發給網絡應用接口,獲取該網絡應用接口根據http協議處理第一http請求得到的第一響應結果,當第一響應結果的第一驗證信息中的"pic_url"與"title"對應的值與第二響應結果中的值匹配時,確定網絡應用接口測試成功,則手機顯示的廣告跟guanggao.txt保存的一致。步驟209、確定網絡應用接口測試成功。在本實施例中,當第一響應結果與第二響應結果匹配時,確定網絡應用接口測試成功。步驟210、生成提示信息,接收網絡應用接口發送的針對提示信息生成的第一http請求。在本實施例中,當第一驗證信息與第二驗證信息不匹配時,對匹配不成功的驗證信息進行分析生成提示信息,用戶根據提示信息修改測試參數生成第一http請求,向網絡應用接口發送第一http請求,執行步驟202,從而利於提高測試的準確性。在圖4所描述的網絡應用接口的測試方法中,當接收到網絡應用接口發送的第一http請求後,選擇最優網絡帶寬的測試伺服器作為目標測試伺服器。通過測試伺服器與域名之間的映射關係查找目標測試伺服器的域名。將第一http請求中的域名修改為目標測試伺服器的域名生成第二http請求。向目標測試伺服器發送第二http請求,接收由目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果,保存第二響應結果。獲取網絡應用接口根據http協議獲取第一http請求對應的第一響應結果,判斷第一響應結果中是否有與第二驗證信息匹配的第一驗證信息,若是,確定第一響應結果與第二響應結果匹配,從而確定測試成功;若否,生成提示信息,接收網絡應用接口發送的針對提示信息生成的第一http請求。同時運用socket協議和http協議,接收目標測試伺服器返回的第二響應結果,確保基於http協議客戶端發出的請求和預期請求的返回結果一致,可保存目標測試伺服器返回的第二響應結果,當驗證信息不匹配時,根據提示信息修改測試參數生成第一http請求,重新對網絡應用接口進行測試,從而提高了測試結果的準確性。請參閱圖5,圖5是本發明實施例提供的一種網絡應用接口的測試裝置的結構圖。如圖5所示,該裝置300可以包括:第一接收單元301,用於接收網絡應用接口發送的第一http請求。本發明實施例中,網絡應用接口可以是網際網路
技術領域:
中任一應用程式中用於進行數據交換的接口。本發明實施例中,http請求是指從客戶端到伺服器端的請求消息,包括消息首行中,對資源的請求方法、資源的標識符及使用的協議。將socket接口接收到網絡應用接口發送的http請求作為第一http請求。生成單元302,用於根據第一http請求生成第二http請求。作為一種可能的實施方式,生成單元303具體用於將第一http請求分為域名和非域名兩部分,根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求。也就是說,修改第一http請求的域名為目標測試伺服器的域名,使得第二http請求的域名為目標測試伺服器的域名,則使得返回結果一致。舉例來說,假設第一http請求為「http://www.xxx.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,則域名:「http://www.xxx.com.cn」,非域名為:「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則第二http請求為「http://www.xxx102.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」。第一發送單元303,用於向目標測試伺服器發送第二http請求。由於socket協議是底層協議,則socket協議返回的響應結果為亂碼,將該響應結果處理成可以識別的編碼很複雜。在接收到第一http請求後,不是直接將第一http請求轉發給測試服務端,而是將第一http請求中的域名修改為目標測試伺服器的域名,得到第二http請求。也就是說通過目標測試伺服器實現第二http請求,從而避免了使用socket協議導致返回的結果為亂碼,且確保目標測試伺服器返回的響應結果為客戶端發送的請求。舉例來說,假設第一http請求的域名為「http://www.xxx.com.cn」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則目標測試伺服器接收的第二http請求的域名為「http://www.xxx102.com.cn」。第二接收單元304,用於接收由目標測試伺服器發送的根據http協議獲取第二http請求對應的第二響應結果,並保存第二響應結果。http協議是一個應用層協議,由請求和響應構成,是一個標準的客戶端伺服器模型。基於http協議的客戶/伺服器模式的信息交換過程,它分四個過程:建立連接、發送請求信息、發送響應信息、關閉連接。在本實施例中,目標測試伺服器接收第二http請求後,根據http協議獲取第二http請求對應的第二響應結果。且將第二響應結果進行保存,從而解決了採用socket協議無法將伺服器的響應結果進行保存的弊端。第三接收單元305,用於接收由網絡應用接口根據http協議獲取第一http請求對應的第一響應結果。在本實施例中,網絡應用接口根據http協議獲取第一http請求對應的第一響應結果與目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果的步驟一致,在此不再贅述。確定單元306,用於當第一響應結果與第二響應結果匹配時,確定網絡應用接口測試成功。作為一種可能的實施方式,確定單元306具體用於:在第二響應結果中查找第二驗證信息,第二驗證信息包括第二http請求對應的網絡地址;在第一響應結果中查找與第二驗證信息對應的第一驗證信息,當第一驗證信息與第二驗證信息匹配時,確定第一響應結果與第二響應結果匹配。其中,驗證信息可以是與http請求對應的編號id、命名name、文本名text、標題title、網絡地址、樣式數據中的顏色color、字體font、對齊方式等等。其中編號id、命名name、文本名text和標題title對響應結果進行標識,位置數據表示響應結果在應用頁面上的位置信息,通常用頂點坐標(x、y)、寬度width和高度height來表示。樣式數據表示響應結果的樣式屬性,例如顏色、文字的字體、對齊方式和四周間隔的距離等等。其中,第二驗證信息和第一驗證信息僅用於區別。本實施例對於存儲響應結果的文本形式不做限定,可選的為txt格式,存儲驗證信息以json格式表示,按照最簡單的形式表示「名稱/值對」的組合。上述網絡地址可以是統一資源定位符(uniformresourcelocator,url),它包含的信息指出文件的位置以及瀏覽器應該怎麼處理它。舉例來說,假設第一http請求的域名為「http://www.xxx.com.cn」,目標測試伺服器的域名為「http://www.xxx102.com.cn」。如圖2所示的應用場景中,當用戶在輸入數字的輸入框中輸入「128103」後,點擊「loadad」按鈕時,向socket發送第一http請求為向目標測試伺服器請求上傳一個編號為「128103」的廣告;socket接收到第一http請求後將請求域名「http://www.xxx.com.cn」修改為目標測試伺服器域名「http://www.xxx102.com.cn」得到第二http請求;目標測試伺服器根據http協議處理第二http請求得到第二響應結果,並在guanggao.txt文件中保存第二響應結果,假設guanggao.txt中的第二驗證信息包括:("pic_url":"http://orionimg.adkmob.com/liehu/20151230/1451445246mm841_l.png","title":"mobilestrike");此外將第二響應結果轉發給網絡應用接口,獲取該網絡應用接口根據http協議處理第一http請求得到的第一響應結果,當第一響應結果的第一驗證信息中的"pic_url"與"title"對應的值與第二響應結果中的值匹配時,確定網絡應用接口測試成功,則手機顯示的廣告跟guanggao.txt保存的一致。在圖5所描述的網絡應用接口的測試裝置中,當接收到網絡應用接口發送的第一http請求後,將第一http請求中的域名修改為目標測試伺服器的域名得到第二http請求。然後向目標測試伺服器發送第二http請求,接收由目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果,保存第二響應結果,獲取網絡應用接口根據http協議獲取第一http請求對應的第一響應結果,當第一響應結果與第二響應結果匹配時,測試成功。同時運用socket協議和http協議,接收目標測試伺服器返回的第二響應結果,確保基於http協議客戶端發出的請求和預期請求的返回結果一致,可保存目標測試伺服器返回的第二響應結果,從而提高了測試結果的準確性。請參閱圖6,圖6是本發明實施例提供的另一種網絡應用接口的測試裝置的結構圖。如圖6所示,該裝置400可以包括:第一接收單元401,用於接收網絡應用接口發送的第一http請求。其中,上述第一接收單元401的具體描述可參見上述的第一接收單元301,在此不再贅述。選擇單元402,用於當存在多個測試伺服器時,在多個測試伺服器中選擇最優網絡帶寬的測試伺服器作為目標測試伺服器。本實施例中,根據socket對網絡應用接口和測試伺服器之間的測試請求和響應結果進行轉發,不需要耗費資源來建立與網絡應用接口之間的通信連接,從而降低了測試工具的負載,提高了測試的穩定性。本實施例中,當socket與多個測試伺服器建立連接時,獲取每一個與socket連接的測試伺服器的網絡帶寬,選擇最優網絡帶寬的測試伺服器作為目標測試伺服器,可減小測試伺服器的壓力,從而提高測試效率。舉例來說,假設與socket連接的測試伺服器的編號為1000、1001和1002,則獲取每一個測試伺服器的網絡帶寬,其中,編號為1000的測試伺服器的網絡帶寬為20%,編號為1001的測試伺服器的網絡帶寬為50%,編號為1002的測試伺服器的網絡帶寬為80%,則將編號為1000的測試伺服器作為目標測試伺服器。查找單元403,用於根據測試伺服器與域名之間的映射關係查找目標測試伺服器的域名。本實施例中,通過對建立的測試伺服器與域名之間的映射關係進行管理,可以在不同的測試項目中,實現對不同測試伺服器與不同網絡應用接口之間的統一管理和調度,打破了實施工具之間存在的壁壘。根據測試伺服器與域名之間的映射關係來查找目標測試伺服器的域名,可提高查找效率。生成單元404,用於將第一http請求分為域名和非域名兩部分,根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求。通過修改第一http請求的域名為目標測試伺服器的域名,使得第二http請求的域名為目標測試伺服器的域名,從而避免了使用socket協議導致返回的結果為亂碼,且確保目標測試伺服器返回的響應結果為客戶端發送的請求,提高測試結果的準確性。舉例來說,假設第一http請求為「http://www.xxx.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,則域名:「http://www.xxx.com.cn」,非域名為:「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則第二http請求為「http://www.xxx102.com.cn」,「pkg」:「com.epicwaskds.ms」,「pkg_size」,「pkg_url」。第一發送單元405,用於向目標測試伺服器發送第二http請求。由於socket協議是底層協議,則socket協議返回的響應結果為亂碼,將該響應結果處理成可以識別的編碼很複雜。在接收到第一http請求後,不是直接將第一http請求轉發給測試服務端,而是將第一http請求中的域名修改為目標測試伺服器的域名,得到第二http請求。也就是說通過目標測試伺服器實現第二http請求,從而避免了使用socket協議導致返回的結果為亂碼,且確保目標測試伺服器返回的響應結果為客戶端發送的請求,提高測試結果的準確性。舉例來說,假設第一http請求的域名為「http://www.xxx.com.cn」,目標測試伺服器的域名為「http://www.xxx102.com.cn」,則目標測試伺服器接收的第二http請求的域名為「http://www.xxx102.com.cn」。第二接收單元406,用於接收由目標測試伺服器發送的根據http協議獲取第二http請求對應的第二響應結果,並保存第二響應結果。第三接收單元407,用於接收由網絡應用接口根據http協議獲取第一http請求對應的第一響應結果。確定單元408,用於當第一響應結果與第二響應結果匹配時,確定第一響應結果與第二響應結果匹配,確定網絡應用接口測試成功。其中,第二接收單元406、第三接收單元407確定單元408的具體描述可參見上述的第二接收單元304、第三接收單元305和確定單元306,在此不再贅述。提示單元409,用於當第一響應結果與第二響應結果不匹配時,生成提示信息。第一接收單元401還用於接收網絡應用接口發送的針對提示信息生成的第一http請求。在本實施例中,當第一驗證信息與第二驗證信息不匹配時,對匹配不成功的驗證信息進行分析生成提示信息,用戶根據提示信息修改測試參數生成第一http請求,向網絡應用接口發送第一http請求,從而利於提高測試的準確性。在圖6所描述的網絡應用接口的測試方法中,當接收到網絡應用接口發送的第一http請求後,選擇最優網絡帶寬的測試伺服器作為目標測試伺服器。通過測試伺服器與域名之間的映射關係查找目標測試伺服器的域名。將第一http請求中的域名修改為目標測試伺服器的域名生成第二http請求。向目標測試伺服器發送第二http請求,接收由目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果,保存第二響應結果。獲取網絡應用接口根據http協議獲取第一http請求對應的第一響應結果,判斷第一響應結果中是否有與第二驗證信息匹配的第一驗證信息,若是,確定第一響應結果與第二響應結果匹配,從而確定測試成功;若否,生成提示信息,接收網絡應用接口發送的針對提示信息生成的第一http請求。同時運用socket協議和http協議,接收目標測試伺服器返回的第二響應結果,確保基於http協議客戶端發出的請求和預期請求的返回結果一致,可保存目標測試伺服器返回的第二響應結果,當驗證信息不匹配時,根據提示信息修改測試參數生成第一http請求,重新對網絡應用接口進行測試,從而提高了測試結果的準確性。請參閱圖7,圖7是本發明實施例提供的電子設備。其中,該網絡應用接口的測試方法適用於手機、平板電腦等基於socket協議的電子設備。如圖7所示,該電子設備可以包括殼體501、處理器502、存儲器503、電路板504和電源電路505,其中,電路板504安置在殼體圍成的空間內部,處理器502和存儲器503設置在電路板504上;電源電路505,用於為電子設備的各個電路或器件供電;存儲器503用於存儲可執行程序代碼;處理器502通過讀取存儲器503中存儲的可執行程序代碼來運行與可執行程序代碼對應的程序,以用於執行以下步驟:接收網絡應用接口發送的第一http請求;根據第一http請求生成第二http請求;向目標測試伺服器發送第二http請求;接收由目標測試伺服器發送的根據http協議獲取第二http請求對應的第二響應結果,並保存第二響應結果;接收由網絡應用接口根據http協議獲取第一http請求對應的第一響應結果;當第一響應結果與第二響應結果匹配時,確定網絡應用接口測試成功。作為一種可能的實施方式,處理器502還用於執行以下操作:將第一http請求分為域名和非域名兩部分,根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求。作為一種可能的實施方式,在根據第一http請求生成第二http請求時,處理器502還用於執行以下操作:將第一http請求分為域名和非域名兩部分,根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求。作為一種可能的實施方式,在接收由網絡應用接口根據http協議獲取第一http請求對應的第一響應結果之後,處理器502還用於執行以下操作:在第二響應結果中查找第二驗證信息,第二驗證信息包括第二http請求對應的網絡地址;在第一響應結果中查找與第二驗證信息對應的第一驗證信息,當第一驗證信息與第二驗證信息匹配時,確定第一響應結果與第二響應結果匹配。作為一種可能的實施方式,處理器502還用於執行以下操作:當第一驗證信息與第二驗證信息不匹配時,生成提示信息;接收網絡應用接口發送的針對提示信息生成的第一http請求。作為一種可能的實施方式,在根據第一http請求中的非域名部分和目標測試伺服器的域名生成第二http請求之前,處理器502還用於執行以下操作:當存在多個測試伺服器時,在多個測試伺服器中選擇最優網絡帶寬的測試伺服器作為目標測試伺服器;根據測試伺服器與域名之間的映射關係查找目標測試伺服器的域名。在圖7所描述的電子設備中,當接收到網絡應用接口發送的第一http請求後,將第一http請求中的域名修改為目標測試伺服器的域名得到第二http請求。然後向目標測試伺服器發送第二http請求,接收由目標測試伺服器根據http協議獲取第二http請求對應的第二響應結果,保存第二響應結果,獲取網絡應用接口根據http協議獲取第一http請求對應的第一響應結果,當第一響應結果與第二響應結果匹配時,測試成功。同時運用socket協議和http協議,接收目標測試伺服器返回的第二響應結果,確保基於http協議客戶端發出的請求和預期請求的返回結果一致,可保存目標測試伺服器返回的第二響應結果,從而提高了測試結果的準確性。在一個實施例中提供了一種存儲介質,該存儲介質用於存儲應用程式,應用程式用於在運行時執行實施例一或實施例二的網絡應用接口的測試方法。在一個實施例中提供了一種應用程式,該應用程式用於在運行時執行實施例一或實施例二的網絡應用接口的測試方法。本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關的硬體來完成,該程序可以存儲於一計算機可讀存儲介質中,存儲介質可以包括:快閃記憶體盤、只讀存儲器(read-onlymemory,rom)、隨機存取器(randomaccessmemory,ram)、磁碟或光碟等。以上對本發明實施例所提供的網絡應用接口的測試方法、裝置及電子設備進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般技術人員,依據本發明的思想,在具體實施方式及應用範圍上均會有改變之處,綜上,本說明書內容不應理解為對本發明的限制。當前第1頁12

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀