新四季網

一種接口自動化測試方法及裝置製造方法

2023-05-17 02:58:21 1

一種接口自動化測試方法及裝置製造方法
【專利摘要】本申請公開了一種接口自動化測試方法及裝置,該方法測試設備在待測接口的程序中,確定不影響接口的返回值的代碼段,並針對該代碼段生成測試腳本,然後,執行該測試腳本,以獲取待測接口的返回值和與該代碼段對應的日誌,再判斷獲取的返回值和日誌是否符合預設結果,若是,則確定待測接口工作正常,否則,確定待測接口工作不正常。通過上述方法,由於測試設備除了校驗返回值是否正確之外,還通過日誌校驗了待測接口的程序中,不影響該接口的返回值的代碼段是否工作正常,因此,測試設備可以準確地測試待測接口。
【專利說明】一種接口自動化測試方法及裝置

【技術領域】
[0001] 本申請涉及計算機【技術領域】,尤其涉及一種接口自動化測試方法及裝置。

【背景技術】
[0002] 目前,隨著自動化測試技術在測試領域中的廣泛應用,測試工程師可以將很多機 械重複的手工測試工作交給自動化測試平臺完成,節省了人力,也提高了測試效率。
[0003] 在測試領域中,接口測試主要用於校驗待測系統與外部系統之間、以及待測系統 內部的各個子系統之間的接口是否能夠正常工作,具體的,要校驗接口兩側數據的交換、傳 遞和控制管理過程,以及系統間相互的邏輯依賴關係是否與符合設計預期。由於接口相對 於其他的業務邏輯,待測試數據量大,且測試需求穩定,變更較少,因此,自動化測試技術很 適用於接口測試。
[0004] 在現有技術中,基於自動化測試平臺,對接口的測試主要包括以下三個方面:
[0005] 1、對輸入參數的完整性校驗,即輸入參數是否包含了所有必要參數;
[0006] 2、對輸入參數的功能性校驗,即針對所有的有效輸入參數,校驗接口的功能是否 符合設計預期;
[0007] 3、接口的容錯能力,即針對無效的或錯誤的輸入參數,接口是否能夠正常返回結 果,並給出有意義的錯誤消息,以幫助調用方定位問題。
[0008] 以上的測試,都以接口的返回值是否符合設計預期作為評判標準。但是,在接口的 程序中,可能會存在不影響該接口的返回值的代碼段,也即,無論該代碼段是否工作正常, 都不會改變該接口的返回值(可能都會返回正確的返回值)。因此,在這種情況下,基於返 回值無法判斷該代碼段是否工作正常,從而,也無法準確地測試該接口。
[0009] 例如,假定某接口預期的功能是在接收一個有效的輸入參數後,返回該輸入參數 的階乘值,並將該階乘值寫入資料庫(寫庫)。當負責計算階乘值的代碼段工作正常時,該 接口能正確返回輸入參數的階乘值,而此時負責寫庫的代碼段可能工作不正常,會寫入錯 誤的階乘值或寫庫失敗。則在現有的接口自動化測試方法下,根據返回的階乘值,會判斷該 接口工作正常,而實際上該接口工作不正常,也即,無法準確地測試該接口。


【發明內容】

[0010] 本申請實施例提供一種接口自動化測試方法及裝置,用以解決現有技術中當接口 的程序中存在不影響該接口的返回值的代碼段時,基於返回值無法正確地測試該接口的問 題。
[0011] 本申請實施例提供的一種接口自動化測試方法,包括:
[0012] 在待測接口的程序中,確定需進行日誌校驗的代碼段;
[0013] 針對所述代碼段生成測試腳本;
[0014] 執行所述測試腳本,以獲取所述待測接口的返回值和與所述代碼段對應的日誌;
[0015] 判斷獲取的返回值和日誌是否符合預設結果;
[0016] 若是,則確定所述待測接口工作正常;
[0017] 否則,確定所述待測接口工作不正常。
[0018] 本申請實施例提供的一種接口自動化測試裝置,包括:
[0019] 確定模塊,用於在待測接口的程序中,確定需進行日誌校驗的代碼段;
[0020] 第一生成模塊,用於針對所述代碼段生成測試腳本;
[0021] 獲取模塊,用於執行所述測試腳本,以獲取所述待測接口的返回值和與所述代碼 段對應的日誌;
[0022] 判斷模塊,用於判斷獲取的返回值和日誌是否符合預設結果,若是,則確定所述待 測接口工作正常,否則,確定所述待測接口工作不正常。
[0023] 本申請實施例提供一種接口自動化測試方法及裝置,該方法測試設備在待測接口 的程序中,確定不影響待測接口的返回值的代碼段,並針對該代碼段生成測試腳本,然後, 執行該測試腳本,以獲取待測接口的返回值和與該代碼段對應的日誌,再判斷獲取的返回 值和日誌是否符合預設結果,若是,則確定待測接口工作正常,否則,確定待測接口工作不 正常。通過上述方法,由於測試設備除了校驗返回值是否正確之外,還通過日誌校驗了待測 接口的程序中,不影響該接口的返回值的代碼段是否工作正常,因此,測試設備可以準確地 測試待測接口。

【專利附圖】

【附圖說明】
[0024] 此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申 請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:
[0025] 圖1為本申請實施例提供的接口自動化測試過程;
[0026] 圖2為本申請實施例提供的接口自動化測試詳細過程;
[0027] 圖3為基於本申請實施例提供的接口自動化測試方法,可實現的測試工具中類的 調用關係圖;
[0028] 圖4為基於本申請實施例提供的接口自動化測試方法,可實現的測試工具中的核 心架構圖;
[0029] 圖5為本申請實施例提供的接口自動化測試裝置結構示意圖。

【具體實施方式】
[0030] 為使本申請的目的、技術方案和優點更加清楚,下面將結合本申請具體實施例及 相應的附圖對本申請技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本申請一 部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做 出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
[0031] 圖1為本申請實施例提供的接口自動化測試過程,具體包括以下步驟:
[0032] SlOl :測試設備在待測接口的程序中,確定需進行日誌校驗的代碼段。
[0033] 在本申請實施例中,所述的測試設備可以是基於自動化測試平臺的測試設備,所 述的待測接口可以是待測軟體接口(以下待測接口也可簡稱為接口),可由測試設備對接 口的功能和性能進行自動化測試。
[0034] 一般的,對於一個接口自動化測試工程,首先,用戶可制定測試策略,測試策略描 述了該測試過程的總體方法和目標,包括測試過程中所使用的自動化測試平臺、測試技術 和測試工具,以及在測試過程各個階段的測試任務等。然後,在對接口進行測試之前,需配 置接口,並由用戶根據接口設計文檔,預先針對接口設計相應的測試用例和執行該測試用 例的預期結果(測試用例的預期結果,以下稱為:預設結果),並制定測試計劃,測試計劃描 述了本次測試過程中執行哪些測試用例、執行的時間點、執行的次數等,其中,測試用例和 測試計劃都可包含在所使用測試工具的配置文件中。進而,測試設備可通過該測試工具對 接口進行自動化測試,具體的,測試設備可按照用戶制定的測試計劃,自動地執行相應的測 試用例,並判斷接口的返回值是否符合預設結果,若是,則確定接口工作正常,否則,確定接 口工作不正常。
[0035] 但是,在接口的程序中,可包含兩類代碼段,一類是能夠影響接口的返回值的代碼 段(以下稱為返回值邏輯),另一類是不影響接口的返回值的代碼段,對於不影響接口的返 回值的代碼段,若這種代碼段工作不正常,則即使接口的返回值符合預設結果,接口也是處 於工作不正常的狀態。例如,假定在接口 A的程序中,除了包含返回值邏輯,還包含了內部 調用另一個接口 B的附加代碼段,且該附加代碼段的執行,並不能影響返回值邏輯執行後 所生成的接口 A的返回值,則當返回值邏輯工作正常,而該附加代碼段工作不正常時,雖然 該返回值可能符合預設結果,但是,接口 A也是處於工作不正常的狀態。
[0036] 因此,根據上述說明,在未確定不影響接口的返回值的代碼段是否工作正常的情 況下,僅基於接口的返回值對接口進行測試的方法是不可靠的。
[0037] 在本申請實施例中,可以通過日誌校驗的方式,判斷上述的代碼段是否工作正常, 則在對接口進行測試之前,測試設備可在接口的程序中,確定出需進行日誌校驗的代碼段, 也即,在接口的程序的各代碼段中,確定不影響接口的返回值的代碼段,作為需進行日誌校 驗的代碼段。
[0038] 另外,在接口測試中,也存在這樣的情況,即:返回值邏輯在工作不正常時,對於一 些特定輸入參數值,仍可以生成正確的返回值,假定測試該接口時所使用的輸入參數值均 包含在這些特定輸入參數值中,則測試設備也無法正確地測試返回值邏輯,因此,在這種情 況下,測試設備除了對不影響接口的返回值的代碼段進行日誌校驗之外,還可對返回值邏 輯也進行日誌校驗,從而可提高測試結果的可靠性。
[0039] S102 :針對該代碼段生成測試腳本。
[0040] 在本申請實施例中,由於後續需要確定不影響接口的返回值的代碼段是否工作正 常,因此,在確定出該代碼段後,用戶可針對該代碼段制定相應的測試策略並配置接口,再 進一步的針對該代碼段設計相關的測試用例,以及制定相應的測試計劃。其中,所述的配 置接口具體包括:配置接口傳遞數據採用的方法,如GET方法(不隱藏用戶標識和用戶密 碼)、P0ST方法(隱藏用戶標識和用戶密碼);配置接口傳遞數據採用的模式,如同步模式、 異步模式。
[0041] 此後,測試設備可根據測試計劃,通過執行與該代碼段相關的測試用例,對該代碼 段進行測試。其中,執行測試用例,具體可包括:測試設備對測試用例進行解析,將測試用 例中包含的針對接口的輸入參數值、測試邏輯等信息轉換為用腳本語言表示的代碼(也 艮P,生成測試腳本),以及後續執行該測試腳本。其中,測試設備生成測試腳本時中所使用 的腳本語言包括但不限於:工具命令語言(Tool Command Language, TCL)、實用報表提取 語言(Practical Extraction and Report Language,PERL)、超文本預處理器(Hypertext Pr印rocessor,PHP)、PYTHON、RUBY 等腳本語言。
[0042] S103 :執行該測試腳本,以獲取待測接口的返回值和與該代碼段對應的日誌。
[0043] 在本申請實施例中,測試設備在執行該測試腳本的過程中,會通過該測試腳本調 用該代碼段,或直接執行該代碼段,並將與該代碼段相關的調用或執行過程記錄為日誌,即 為所述的該代碼段對應的日誌。其中,該日誌中可包含調用或執行該代碼段時所涉及的各 參數的取值狀態和變化過程,從而,可為後續校驗該代碼段是否工作正常提供依據。當然, 測試設備也可記錄測試腳本的完整的執行日誌,顯然,該執行日誌中包含有與該代碼段對 應的日誌。
[0044] S104:判斷獲取的返回值和日誌是否符合預設結果,若是,則執行步驟S105,否 貝1J,執行步驟S106。
[0045] 在本申請實施例中,接口的返回值是由接口的返回值邏輯根據測試腳本中包含的 輸入參數值生成的,因此,測試設備在執行完該測試腳本,獲取到接口的返回值和該代碼段 對應的日誌後,可根據預設結果,對該返回值進行校驗,以判斷返回值邏輯是否工作正常, 且測試設備同時還可根據預設結果,對獲取的與該代碼段對應的日誌進行校驗,以判斷該 代碼段是否工作正常。
[0046] S105 :確定待測接口工作正常。
[0047] S106 :確定待測接口工作不正常。
[0048] 通過上述方法,由於測試設備在對接口進行自動化測試時,除了通過返回值校驗 了接口的返回值邏輯是否工作正常之外,還通過日誌校驗了接口的程序中,不影響該接口 的返回值的代碼段是否工作正常,因此,測試設備可以準確地測試接口。
[0049] 在本申請實施例中,對於上述步驟SlOl,測試設備在接口的程序中,確定需進行日 志校驗的代碼段,具體包括:測試設備在接口的程序的各代碼段中,確定不影響接口的返回 值的代碼段,作為需進行日誌校驗的代碼段。在實際應用中,測試設備或用戶可使用代碼工 具(例如Understand代碼工具)對接口的程序進行審計,生成代碼邏輯關係依賴圖,以分 析確定出接口的程序中存在的不影響接口的返回值的代碼段。
[0050] 進一步的,在對接口進行測試前,測試設備還可對使用的測試工具進行相應的配 置,如接口所在主機的網際網路協議(Internet Protocol, IP)地址、埠號、對應的資料庫連 接統一資源定位器(Uniform Resource Locator,URL)、用戶帳號、用戶密碼等等。其中,在 實際應用中,可在所述的測試工具上實現本申請實施例中所述的方法,則測試設備在測試 接口時,可通過使用該測試工具執行所述的方法。
[0051] 接下來,測試設備可開始對接口進行測試,也即,測試設備可根據測試計劃,執行 與該代碼段相關的測試用例,對於上述步驟S102,針對所述代碼段生成測試腳本,具體包 括:根據預設的與所述代碼段相關的測試用例,生成測試腳本。當然,若接口的測試場景較 少時,用戶也可不設計測試用例,而是手動編寫測試腳本並上載至測試設備上,則測試設備 可直接執行用戶編寫的測試腳本。
[0052] 更進一步的,由於在執行測試腳本的過程中需記錄相關的日誌,而接口的程序中 一般不會包含記錄日誌的程序,因此,若要記錄日誌,可由測試設備在執行測試腳本之前, 加載日誌程序,其中,所述的日誌程序可以由測試設備上的自動化測試平臺提供,也可由用 戶提供給測試設備使用。在本申請實施例中,對其中的一種加載日誌程序的方法進行說 明:
[0053] 測試設備在執行測試腳本之前,可向接口的程序中加入日誌程序,相應的,在上述 步驟S103中,執行該測試腳本,以獲取與該代碼段對應的日誌,具體包括:執行該測試腳 本,並通過該日誌程序獲取與該代碼段對應的日誌。
[0054] 例如,對於某接口 A,假定接口 A內部調用了另一個接口 B,且即使該調用過程執行 失敗也不會影響接口 A生成正確的返回值,則可對接口 A內部調用接口 B的代碼段進行日 志校驗,測試設備在對接口 A進行測試之前,可在接口的程序中加入日誌程序,具體的,可 在接口 A內部調用接口 B的代碼段下加入以下代碼:
[0055]

【權利要求】
1. 一種接口自動化測試方法,其特徵在於,包括: 在待測接口的程序中,確定需進行日誌校驗的代碼段; 針對所述代碼段生成測試腳本; 執行所述測試腳本,以獲取所述待測接口的返回值和與所述代碼段對應的日誌; 判斷獲取的返回值和日誌是否符合預設結果; 若是,則確定所述待測接口工作正常; 否則,確定所述待測接口工作不正常。
2. 如權利要求1所述的方法,其特徵在於,在待測接口的程序中,確定需進行日誌校驗 的代碼段,具體包括: 在待測接口的程序的各代碼段中,確定不影響所述待測接口的返回值的代碼段,作為 需進行日誌校驗的代碼段。
3. 如權利要求1所述的方法,其特徵在於,針對所述代碼段生成測試腳本,具體包括: 根據預設的與所述代碼段相關的測試用例,生成測試腳本。
4. 如權利要求3所述的方法,其特徵在於,執行所述測試腳本之前,所述方法還包括: 向所述待測接口的程序中加入日誌程序; 執行所述測試腳本,以獲取與所述代碼段對應的日誌,具體包括: 執行所述測試腳本,並通過所述日誌程序獲取與所述代碼段對應的日誌。
5. 如權利要求1所述的方法,其特徵在於,判斷獲取的返回值和日誌是否符合預設結 果之前,所述方法還包括: 生成與獲取的日誌對應的校驗程序; 判斷獲取的返回值和日誌是否符合預設結果,具體包括: 通過所述校驗程序判斷獲取的返回值和日誌是否符合預設結果。
6. 如權利要求1所述的方法,其特徵在於,判斷獲取的返回值和日誌是否符合預設結 果,具體包括: 從預設結果中提取預設返回結果和預設參數值; 當獲取的返回值與所述預設返回結果匹配,且獲取的日誌中包含的既定參數值與所述 預設參數值匹配時,確定獲取的返回值和日誌符合預設結果; 當獲取的返回值與所述預設返回結果不匹配,或獲取的日誌中包含的既定參數值與所 述預設參數值不匹配時,確定獲取的返回值和日誌不符合預設結果。
7. -種接口自動化測試裝置,其特徵在於,包括: 確定模塊,用於在待測接口的程序中,確定需進行日誌校驗的代碼段; 第一生成模塊,用於針對所述代碼段生成測試腳本; 獲取模塊,用於執行所述測試腳本,以獲取所述待測接口的返回值和與所述代碼段對 應的日誌; 判斷模塊,用於判斷所述獲取模塊獲取的返回值和日誌是否符合預設結果,若是,則確 定所述待測接口工作正常,否則,確定所述待測接口工作不正常。
8. 如權利要求7所述的裝置,其特徵在於,所述確定模塊具體用於,在待測接口的程序 的各代碼段中,確定不影響所述待測接口的返回值的代碼段,作為需進行日誌校驗的代碼 段。
9. 如權利要求7所述的裝置,其特徵在於,所述第一生成模塊具體用於,根據預設的與 所述代碼段相關的測試用例,生成測試腳本。
10. 如權利要求9所述的裝置,其特徵在於,所述裝置還包括: 加入模塊,用於在所述獲取模塊執行所述測試腳本之前,向所述待測接口的程序中加 入日誌程序; 所述獲取模塊具體用於,執行所述測試腳本,並通過所述日誌程序獲取與所述代碼段 對應的日誌。
【文檔編號】G06F11/22GK104360920SQ201410724763
【公開日】2015年2月18日 申請日期:2014年12月2日 優先權日:2014年12月2日
【發明者】徐炳松, 羅詩堯, 丁玲 申請人:微夢創科網絡科技(中國)有限公司

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀