本文作者:kaifamei

業務測試方法、裝置、電子設備及存儲介質與流程

更新時間:2025-12-28 12:06:44 0條評論

業務測試方法、裝置、電子設備及存儲介質與流程



1.本公開涉及測試技術領域,具體地,涉及一種業務測試方法、裝置、電子設備及存儲介質。


背景技術:



2.在軟件測試行業,業務測試是檢驗業務功能需求必不可少的測試過程。業務測試是指測試人員將系統的不同模塊進行有效串接,繼而模擬真實用戶的實際使用情況對系統進行運營,促使系統能夠充分滿足用戶所要求的功能的測試過程。簡而言之,就是多個功能組合測試。
3.然而,目前的業務測試需要建立大量的測試用例,而且測試用例下的接口調用關系處理不夠靈活,通常需要專業人員通過硬編碼才能完成,從而導致測試效率較低。


技術實現要素:



4.為克服相關技術中存在的問題,本公開提供一種業務測試方法、裝置、電子設備及存儲介質。
5.根據本公開實施例的第一方面,提供一種業務測試方法,包括:基于當前業務流程,建立業務流程圖,所述業務流程圖包括多個節點圖標以及所述多個節點圖標之間流轉關系,每一所述節點圖標對應一個業務接口,每一所述流轉關系對應一個斷言條件;對所述業務流程圖進行解析,得到測試代碼,所述測試代碼用于對所述多個節點圖標對應的業務接口進行調用;運行所述測試代碼,以對所述當前業務流程進行業務測試。
6.可選地,所述基于當前業務流程,建立業務流程圖,包括:顯示可視化編輯界面,所述可視化編輯界面包括多個節點圖標;響應于用戶對所述多個節點圖標做出的第一操作,生成所述多個節點圖標的整體關系圖,所述整體關系圖表明所述多個節點圖標之間的流轉關系,其中,所述第一操作包括拖拽操作和連接操作;針對所述整體關系圖中的每一節點圖標,響應于用戶的第二操作,為所述節點圖標設定與所述第二操作對應的業務接口;針對所述整體關系圖中各節點圖標之間的流轉關系,響應用戶的第三操作,為所述流轉關系設定與所述第三操作對應的斷言條件;將設定好業務接口和斷言條件的整體關系圖作為所述業務流程圖。
7.可選地,所述第二操作包括第一子操作和第二子操作,所述響應于用戶的第二操作,為所述節點圖標設定與所述第二操作對應的業務接口,包括:響應于用戶對所述節點圖標做出的所述第一子操作,展示接口列表,所述接口列表包括多個業務接口對應的選項;
響應于用戶對所述接口列表做出的所述第二子操作,從所述接口列表中確定與所述第二子操作對應的目標業務接口,并將所述目標業務接口與所述節點圖標關聯。
8.可選地,所述第二操作還包括第三子操作,所述響應于用戶的第二操作,為所述節點圖標設定與所述第二操作對應的業務接口,還包括:響應于用戶的第三子操作,進入所述節點圖標對應的業務接口的接口參數設置界面;響應于用戶在所述接口參數設置界面中的參數設置操作,對所述業務接口的請求參數和提取參數進行配置,其中,所述請求參數包括參數名稱、參數類型以及參數值。
9.可選地,在所述響應于用戶對所述節點圖標做出的所述第一子操作,展示接口列表,所述接口列表包括多個業務接口對應的選項之后,還包括:獲取當前節點圖標對應的參考節點圖標,所述當前節點圖標為用戶當前正在配置的節點圖標,所述參考節點圖標的流轉關系在所述當前節點圖標之前,且所述參考節點圖標已經配置好了業務接口;根據所述參考節點圖標對應的業務接口,從預設的多個業務場景中確定目標業務場景;根據所述目標業務場景更新所述接口列表的選項排序。
10.可選地,所述根據所述目標業務場景更新所述接口列表的選項排序,包括:從預設的多個業務接口中獲取與所述目標業務場景對應的常用業務接口;將所述接口列表中從上到下排列的前n個選項替換為所述常用業務接口對應的選項,其中n為正整數。
11.可選地,所述第三操作包括第五子操作和第六子操作,所述響應用戶的第三操作,為所述流轉關系設定與所述第三操作對應的斷言條件,包括:響應于所述第五子操作,進入所述流轉關系的斷言設置界面;響應于用戶在所述斷言設置界面做出的所述第六子操作,確定所述流轉關系的斷言條件,其中,第六子操作包括:在所述斷言設置界面顯示的斷言條件編碼列表中,選取出斷言目標編碼的操作,或者在所述斷言設置界面顯示的多段斷言條件編碼中,對至少一段的斷言條件編碼的拖拽操作。
12.根據本公開實施例的第二方面,提供一種業務測試裝置,該裝置包括:業務流程圖構建模塊,用于基于當前業務流程,建立業務流程圖,所述業務流程圖包括多個節點圖標以及所述多個節點圖標之間流轉關系,每一所述節點圖標對應一個業務接口,每一所述流轉關系對應一個斷言條件;測試代碼生成模塊,用于對所述業務流程圖進行解析,得到測試代碼,所述測試代碼用于對所述多個節點圖標對應的業務接口進行調用;測試模塊,用于運行所述測試代碼,以對所述當前業務流程進行業務測試。
13.根據本公開實施例的第三方面,提供一種電子設備,包括:存儲器,其上存儲有計算機程序;處理器,用于執行所述存儲器中的所述計算機程序,以實現第一方面所述方法的
步驟。
14.根據本公開實施例的第四方面,提供一種非臨時性計算機可讀存儲介質,其上存儲有計算機程序,該程序被處理器執行時實現第一方面所述方法的步驟。
15.本公開的實施例提供的技術方案,通過基于當前業務流程,建立業務流程圖,業務流程圖包括多個節點圖標以及多個節點圖標之間流轉關系,每一節點圖標對應一個業務接口,每一流轉關系對應一個斷言條件;對業務流程圖進行解析,得到測試代碼,測試代碼用于對多個節點圖標對應的業務接口進行調用;運行測試代碼,以對當前業務流程進行業務測試。這樣,就能利用業務流程圖中斷言條件的自動判斷功能,結合上下游接口的流轉關系,實現自動化地模擬出編排的業務場景中多條線路的測試用例,并自動生成測試用例的代碼,簡化了業務測試流程,使得非專業人員也能夠通過對圖標的簡單操作來完成測試,從而大大提升了業務測試效率。
16.本公開的其他特征和優點將在隨后的具體實施方式部分予以詳細說明。
附圖說明
17.附圖是用來提供對本公開的進一步理解,并且構成說明書的一部分,與下面的具體實施方式一起用于解釋本公開,但并不構成對本公開的限制。在附圖中:圖1是根據一示例性實施例示出的一種業務測試方法的流程圖。
18.圖2是根據圖1實施例示出的一種業務流程圖。
19.圖3是根據另一示例性實施例示出的一種業務測試方法的流程圖。
20.圖4是根據圖3實施例示出的一種可視化編輯界面的示意圖。
21.圖5是根據一示例性實施例示出的一種接口參數設置界面的示意圖。
22.圖6是根據一示例性實施例示出的采用拖拽式來設置提取參數時的界面示意圖。
23.圖7是根據一示例性實施例示出的采用編碼式來設置提取參數時的界面示意圖。
24.圖8是根據一示例性實施例示出的采用編碼式來設置斷言條件時的界面示意圖。
25.圖9是根據一示例性實施例示出的在對http響應頭進行設置時的界面示意圖。
26.圖10是根據一示例性實施例示出的在對http響應碼進行設置時的界面示意圖。
27.圖11是根據一示例性實施例示出的執行日志列表的示意圖。
28.圖12是根據一示例性實施例示出的一種日志詳情界面。
29.圖13是根據一示例性實施例示出的另一種日志詳情界面。
30.圖14是根據一示例性實施例示出的本實施例中業務流程的測試用例拆解示意圖。
31.圖15是根據一示例性實施例示出的一種業務測試裝置的框圖。
32.圖16是根據一示例性實施例示出的一種電子設備的功能框圖示意圖。
具體實施方式
33.以下結合附圖對本公開的具體實施方式進行詳細說明。應當理解的是,此處所描述的具體實施方式僅用于說明和解釋本公開,并不用于限制本公開。
34.在相關技術中,業務測試的第一步就是分析并建立業務測試場景,而業務場景的最小單位一般來說就是應用程序編程接口。每一個業務場景都可能會由多個上下游接口進行串接,而且上下游接口之間又有著非常復雜的業務流程和各種邏輯分支。相關技術中的
業務測試流程是:先根據用戶角進行分類,然后根據不同角的用戶的常用功能進行業務場景設計,一條業務場景對應一條測試用例,然后根據測試用例人工編排接口調用順序和參數傳遞。
35.可見,上述方式的最大缺點是業務場景的梳理必須完整且無遺漏,面對錯綜復雜和邏輯分支龐大的業務場景需要建立大量的測試用例,而且測試用例下的接口調用關系處理不夠靈活,甚至需要專業人員通過硬編碼來實現。顯然,這樣做專業性太強,不適宜推廣,且會很大程度上加大測試過程的難度和工作量。因此,目前的業務測試方法,效率非常低下。
36.針對上述問題,本實施例提供一種業務測試方法、裝置、電子設備及存儲介質,能夠在可視化的編輯界面中通過拖拽等操作進行業務場景的編排,并根據編排的業務流程自動生成測試用例的代碼,使得非專業人員也能夠通過對圖標的簡單操作來完成測試,從而大大提升了業務測試效率。
37.圖1是根據一示例性實施例示出的一種業務測試方法的流程圖,如圖1所示,該方法可以包括以下步驟:110、基于當前業務流程,建立業務流程圖,上述業務流程圖包括多個節點圖標以及上述多個節點圖標之間流轉關系,每一上述節點圖標對應一個業務接口,每一上述流轉關系對應一個斷言條件。
38.示例性地,該業務測試方法可以應用于具有顯示功能的電子設備,可選地,該電子設備包括但不限于計算機、筆記本電腦、平板電腦、智能手機等。下面以計算機為例進行說明。
39.作為一種示例,當用戶需要對當前業務流程進行測試時,計算機可以顯示一個可視化編輯界面,以使用戶能在可視化編輯界面中基于當前業務流程,建立業務流程圖。可選地,由于業務流程是有多個業務構成,每個業務可以預先對應一個業務接口,所以用戶可以在可視化編輯界面中選取不同的業務接口對應的節點圖標,并通過對該節點圖標進行拖拽、連接等操作,建立各個業務接口之間的整體關系圖。并在整體關系圖的基礎上,配置每個節點圖標對應的業務接口,即配置業務接口的接口參數,以及每個節點圖標之間的流轉關系對應的斷言條件,從而構建得到業務流程圖。例如,得到的業務流程圖可以如圖2所示,在該業務流程圖中,各個節點圖標通過帶箭頭的連接線連接,所以該帶箭頭的連接線可以表明各節點圖標對應的業務接口之間的流轉關系,該流轉關系在用戶配置好斷言條件以后,在測試時,就能夠根據斷言條件,在節點圖標對應的業務接口處判斷是否繼續執行業務流程。其中,由于流轉關系可以能出現分支的情況,所以每一條分支可以對應一個測試用例。
40.120、對上述業務流程圖進行解析,得到測試代碼,上述測試代碼用于對上述多個節點圖標對應的業務接口進行調用。
41.可以理解的是,由于業務流程圖中包含了采用了哪些業務接口、各個業務接口之間的流轉關系以及流轉關系對應的斷言條件等測試信息,所以對業務流程圖進行解析后,可以根據上述測試信息生成測試代碼。
42.130、運行上述測試代碼,以對上述當前業務流程進行業務測試。
43.其中,計算機在得到該測試代碼后,可以運行該測試代碼,從而實現對當前業務流
程進行測試,由于上下游的業務接口之間可以通過斷言條件自動判斷是否繼續執行該業務流程,并在業務流程不能繼續執行時,自動輸出測試結果,也就是通過斷言條件可以自動形成多個業務分支對應的測試用例,再根據測試用例進行自動測試,避免了目前用戶需要手動建立眾多測試用例的情況。
44.可見,在本實施例中,通過基于當前業務流程,建立業務流程圖,業務流程圖包括多個節點圖標以及多個節點圖標之間流轉關系,每一節點圖標對應一個業務接口,每一流轉關系對應一個斷言條件;對業務流程圖進行解析,得到測試代碼,測試代碼用于對多個節點圖標對應的業務接口進行調用;運行測試代碼,以對當前業務流程進行業務測試。這樣,就能利用業務流程圖中斷言條件的自動判斷功能,結合上下游接口的流轉關系,實現自動化地模擬出編排的業務場景中多條線路的測試用例,并自動生成測試用例的代碼,簡化了業務測試流程,使得非專業人員也能夠通過對圖標的簡單操作來完成測試,從而大大提升了業務測試效率。
45.圖3是根據另一示例性實施例示出的一種業務測試方法的流程圖,如圖3所示,該方法可以包括以下步驟:210、顯示可視化編輯界面,上述可視化編輯界面包括多個節點圖標。
46.220、響應于用戶對上述多個節點圖標做出的第一操作,生成上述多個節點圖標的整體關系圖,上述整體關系圖表明上述多個節點圖標之間的流轉關系,其中,上述第一操作包括拖拽操作和連接操作。
47.示例性地,在用戶需要進行業務測試時,計算機可以顯示可視化編輯界面,可選地,該可視化編輯界面可以包括可視化的節點圖標創建選項以及一些常規的操作選項(如撤銷、還原、保存)等。
48.作為一種示例,第一操作可以點擊拖拽等操作,可視化編輯界面可以如圖4所示,其中,節點圖標創建選項可以位于可視化編輯界面的左側,當用戶做出點擊節點圖標創建選項的操作時,計算機可以響應該操作,在可視化編輯界面中部的區域生成節點圖標;了或者用戶可以直接從可視化編輯界面的左側拖拽出節點圖標,移動至可視化編輯界面中部的區域來進行編輯。
49.沿用上述示例,請再次參閱圖4,用戶可以通過點擊界面左側的“節點圖標選項”創建出3個節點圖標,再通過對節點圖標進行拖拽的操作,可以移動各個節點圖標的位置;通過對節點圖標進行連接操作,可以將各個節點圖標用帶箭頭的連接線(以下可稱箭頭連線)進行連接,連接后的各個節點圖標對應連接線具有相應的流轉關系,例如圖4中的3個節點圖標的流轉關系為從左到右依次流轉,從而可以得到如圖4所示的業務流程圖,該業務流程圖即為該業務場景的全局拓撲關系圖。
50.230、針對上述整體關系圖中的每一節點圖標,響應于用戶的第二操作,為上述節點圖標設定與上述第二操作對應的業務接口。
51.示例性地,第二操作可以包括列表下拉、點擊等操作,如圖4所示,在確定業務流程圖后,在可視化編輯界面中,當用戶通過第二操作選中任意一個節點圖標后,可以在圖4界面的右下角顯示業務接口選擇界面。在該業務接口選擇界面中,用戶下拉接口列表的操作,可以展示出多個預設的業務接口。在接收到用戶在接口列表中的選中操作時,可以響應該操作為該節點圖標設定選中的業務接口,此后,在對業務接口設定接口參數后,即可完成對
該節點圖標設定好業務接口。例如在圖4中,將第二個節點圖標設定的業務接口為“student query”。以此類推,通過上述方式可以為業務流程圖中的每一節點圖標設定業務接口。
52.可以理解的是,該業務接口為應用程序編程接口(application programming interface,api),是一些預先定義的函數。
53.240、針對上述整體關系圖中各節點圖標之間的流轉關系,響應用戶的第三操作,為上述流轉關系設定與上述第三操作對應的斷言條件。
54.示例性地,第三操作可以點擊、下拉列表、輸入等操作,在可視化編輯界面中,用戶可以通過點擊兩個節點圖標之間的箭頭連線來進入斷言條件設置界面,作為一種示例,斷言條件設置界面可以顯示包括多種斷言條件的斷言條件編碼列表,用戶可以從斷言條件編碼列表選取出自己需要的斷言條件,從而為該箭頭連線(也就是該箭頭連線對應的流轉關系)設定好斷言條件。以此類推,通過上述第三操作可以完成對每個流轉關系對應的斷言條件的設置。
55.可以理解的是,斷言是一個包含布爾表達式的語句,設定好的斷言條件可以自動控制測試過程中的業務流轉過程。
56.250、將設定好業務接口和斷言條件的整體關系圖作為上述業務流程圖。
57.在一些實施方式中,計算機可以通過預設的解析器解析圖形化的接口流轉關系(即業務流程圖),從而得到測試程序。
58.可選地,上述第一操作、第二操作以及第三操作,可以是用戶通過外設(如鼠標、鍵盤)完成的操作,也可以是用戶通過對計算機的觸控屏進觸控而完成的操作,在此不做限定。
59.可以理解的是,在本實施例中步驟230和步驟240的執行順序可以不做限定,例如步驟240可以在步驟230之前也可以在步驟230之后。
60.可選地,當用戶在可視化編輯界面中點擊節點圖標時,計算機可以在節點圖標的附近顯示該節點圖標對應的附屬功能選項,例如(刪除、參數設置等等)。
61.260、對上述業務流程圖進行解析,得到測試代碼,上述測試代碼用于對上述多個節點圖標對應的業務接口進行調用。
62.270、運行上述測試代碼,以對上述當前業務流程進行業務測試。
63.其中,步驟260至步驟270的具體實施方式可以參考步驟120至步驟130,故不在此贅述。
64.可見,在本實施例中,通過顯示可視化編輯界面,上述可視化編輯界面包括多個節點圖標;響應于用戶對上述多個節點圖標做出的第一操作,生成上述多個節點圖標的整體關系圖,上述整體關系圖表明上述多個節點圖標之間的流轉關系,其中,上述第一操作包括拖拽操作和連接操作;針對上述整體關系圖中的每一節點圖標,響應于用戶的第二操作,為上述節點圖標設定與上述第二操作對應的業務接口;針對上述整體關系圖中各節點圖標之間的流轉關系,響應用戶的第三操作,為上述流轉關系設定與上述第三操作對應的斷言條件;將設定好業務接口和斷言條件的整體關系圖作為上述業務流程圖。這樣能夠在可視化的編輯界面中通過拖拽等操作進行業務場景的編排,并根據編排的業務流程自動生成測試用例的代碼,使得非專業人員也能夠通過對圖標的簡單操作來完成測試,從而大大提升了業務測試效率。
65.本示例性實施例示出的一種業務測試方法的流程圖,該方法可以包括以下步驟:310、顯示可視化編輯界面,上述可視化編輯界面包括多個節點圖標。
66.320、響應于用戶對多個節點圖標做出的第一操作,生成上述多個節點圖標的業務流程圖。上述業務流程圖表明上述多個節點圖標之間的流轉關系,其中,上述第一操作包括拖拽操作和連接操作中的至少一種。
67.其中,步驟310至步驟320的具體實施方式可以參考步驟210至步驟220,故不在此贅述。
68.330、針對上述業務流程圖中的每一節點圖標,響應于用戶的第二操作,為上述節點圖標設定與上述第二操作對應的業務接口。
69.在一些實施方式中,上述第二操作包括第一子操作和第二子操作,步驟330的具體實施方式可以包括:331、響應于用戶對上述節點圖標做出的上述第一子操作,展示接口列表,上述接口列表包括多個業務接口對應的選項。
70.332、響應于用戶對上述接口列表做出的上述第二子操作,從上述接口列表中確定與上述第二子操作對應的目標業務接口,并將上述目標業務接口與上述節點圖標關聯。
71.作為一種示例,例如,當計算機接收到用戶在可視化編輯界面中,對任意一個節點圖標(如“接口2”)做出的第一子操作(如點擊操作)時,可以展示圖4中右下角的接口列表,上述接口列表包括多個業務接口對應的選項。
72.當計算機接收到用戶在接口列表中做出的第二子操作(如點擊操作)時,可以將點擊選中的業務接口確定為目標業務接口,如圖4中的“studentquery”業務接口,并將“studentquery”業務接口與第二節點圖標進行關聯,從而完成對節點圖標為“接口2”的業務接口的設定。
73.在一些實施方式中,上述第二操作還包括第三子操作,步驟230還可以包括:333、響應于用戶的第三子操作,進入上述節點圖標對應的業務接口的接口參數設置界面,上述接口參數設置界面用于配置上述業務接口的請求參數和提取參數,上述請求參數包括參數名稱、參數類型以及參數值。
74.示例性地,接口參數設置界面可以如圖5所示,該接口參數設置界面可以包括用于配置接口的請求參數的“請求參數”選項,當用戶點擊該選項時,可以切換到設置請求參數的界面,該接口參數設置界面還可以包括用于配置接口的提取參數的“提取參數”選項,當用戶點擊該選項時,可以切換到設置提取參數的界面。
75.其中,請再次參閱圖5,當接口參數設置界面切換到設置請求參數的界面時,用戶可以在請求參數設置的界面中輸入多個參數名稱,以及多個參數名稱中每一參數名稱對應的參數類型以及參數值等,從而完成對業務接口的請求參數的設定。
76.其中,請求參數設置的界面可以為接口參數設置界面的子界面。
77.在一些實施方式中,上述方法還包括:響應于用戶在上述接口參數設置界面做出的第四子操作,確定上述節點圖標對應的接口的提取參數,其中,第四子操作包括:在上述接口參數設置界面顯示的參數提取編碼列表中,選取出參數目標編碼的操作,或者
在上述接口參數設置界面顯示的多段參數提取編碼中,對至少一段的參數提取編碼的拖拽操作。
78.沿用上述示例,當用戶點擊圖5中的“提取參數”選項,切換到設置提取參數的界面時,設置提取參數的界面中可以顯示兩種采提取參數的設置方式,一種為拖拽式,另一種為編碼式。
79.作為一種示例,如圖6所示,采用拖拽式來設置提取參數時,可以從斷言設置界面左側顯示的由接口響應數據解析的樹形結構中,拖拽一到多個節點至右邊,然后按需選擇不同的操作符,從而完成提取參數的設置。
80.作為另一種示例,如圖7所示,采用編碼式來設置提取參數時,可以從接口參數設置界面顯示的參數提取編碼列表中,選取出參數目標編碼作為提取參數,例如,參數提取編碼列表中包括基于正則表達式的提取方式的選項、基于字符串截取的提取方式的選項、基于jsonpath的提取方式的選項、基于xpath的提取方式的選項等參數提取編碼選項,用戶可以選取出圖7中的基于正則表達式的提取方式來作為提取參數的提取方式。
81.在一些實施方式中,在上述響應于用戶對上述節點圖標做出的上述第一子操作,展示接口列表,上述接口列表包括多個業務接口對應的選項之后,還包括:獲取當前節點圖標對應的參考節點圖標,上述當前節點圖標為用戶當前正在配置的節點圖標,上述參考節點圖標的流轉關系在上述當前節點圖標之前,且上述參考節點圖標已經配置好了業務接口;根據上述參考節點圖標對應的業務接口,從預設的多個業務場景中確定目標業務場景;根據上述目標業務場景更新上述接口列表的選項排序。
82.在一些實施方式中,在為當前節點圖標設定業務接口的過程中,可以獲取流轉關系在上述當前節點圖標之前,且設定好業務接口的節點圖標的參考業務接口。根據上述業務接口從預設的多個業務場景中確定目標業務場景。根據上述目標業務場景更新上述接口列表的選項排序。
83.示例性地,以圖4為例,例如圖4中從左到右的三個節點圖標可以看作第一節點圖標(即接口1)、第二節點圖標(即接口2)和第三節點圖標(即接口3),其中,第一節點圖標和第二節點圖標都已經設定好業務接口,其業務接口的接口參數已經確定。例如,根據第一圖標對應的業務接口(如支付業務接口)和第二圖標對應的業務接口(如支付業務接口),從預設的多個業務場景中,確定當前業務場景為支付業務場景。如果當前需要給第三節點圖標設定業務接口,那么在通過接口列表為第三節點圖標選取業務接口時,可以更新上述接口列表的選項排序,將支付業務場景中常用的業務接口選項顯示在該接口列表中,以方便用戶選擇。其中,預設的多個業務場景中每一業務場景預先對應的至少一個業務接口。
84.可選地,根據上述目標業務場景更新上述接口列表的選項排序,可以包括:從預設的多個業務接口中獲取與上述目標業務場景對應的常用業務接口;將上述接口列表中從上到下排列的前n個選項,替換為上述常用業務接口對應的選項,其中n為正整數。
85.示例性地,例如上述接口列表中從上到下排列的選項為:接口a、接口b、接口c以及接口d,如果n為3,則可以將接口a、接口b、接口c替換為常用業務接口,接口d的排列位置保持不變。從而方便用戶優先選擇可能需要的接口。
86.可選地,可以將已經確定的業務接口與預設的業務場景對應的業務接口進行相似度比對,并將相似度大于相似度閾值的業務場景確定為當前業務場景。從而在為后續的節
點圖標設定業務接口時,優先推送當前業務場景所關聯的業務接口選項,以提升用戶對業務流程圖的編排效率。
87.在一些實施方式中,上述方法還包括:在為當前節點圖標設定業務接口的過程中,獲取流轉關系在上述當前節點圖標之前,且設定好業務接口的節點圖標,作為參考節點圖標。獲取上述參考節點圖標對應的業務接口的接口參數,作為參考接口參數。在上述當前節點圖標對應的業務接口的接口參數設置界面中,展示上述參考接口參數,以供用戶選取。
88.沿用上述示例,例如第一節點圖標設定好了業務接口的接口參數為:接口參數a,第二節點圖標設定好了業務接口的接口參數為:接口參數b,則可以將接口參數a和接口參數b作為參考接口參數。如果當前需要給第三節點圖標設定業務接口,那么可以在第三節點圖標對應的業務接口的接口參數設置界面中,展示上述接口參數a和接口參數b,用戶可以直接選取參考接口參數,將參考接口參數填充至第三節點圖標對應的業務接口的接口參數區域中。從而方便用戶設置接口參數,避免重復輸入的情況,提升了測試程序的生成效率。
89.340、針對上述業務流程圖中各節點圖標之間的流轉關系,響應用戶的第三操作,為上述流轉關系設定與上述第三操作對應的斷言條件。
90.在一些實施方式中,上述第三操作包括第五子操作,步驟340可以包括:341、響應于用戶的第五子操作,進入上述流轉關系的斷言設置界面;342、響應于用戶在上述斷言設置界面做出的第六子操作,確定上述流轉關系的斷言條件,其中,第六子操作包括:343、在上述斷言設置界面顯示的斷言條件編碼列表中,選取出斷言目標編碼的操作,或者344、在上述斷言設置界面顯示的多段斷言條件編碼中,對至少一段的斷言條件編碼的拖拽操作。
91.可選地,斷言設置界面中可以顯示兩種斷言條件的設置方式,一種為拖拽式,另一種為編碼式。
92.作為一種示例,采用拖拽式來設置斷言條件時,可以從斷言設置界面左側顯示的由接口響應數據解析的樹形結構中,拖拽一到多個節點至右邊,然后按需選擇不同的操作符,從而完成斷言表達式的設置。更為具體的實施方式可以參考圖6所示的采用拖拽式來設置提取參數的實施方式,故不在此贅述。
93.作為另一種示例,如圖8所示,采用編碼式來設置斷言條件時,需要設定三項參數,分別為http響應數據、http響應頭以及http響應碼。在對http響應數據進行設置時,可以從計算機顯示斷言設置界面顯示的斷言硬編碼類型列表中,選取一到多種編碼類型作為斷言條件,例如,斷言條件編碼列表中包括基于正則表達式的提取方式編碼、基于字符串截取的提取方式編碼、基于jsonpath的提取方式編碼、基于xpath的提取方式編碼等斷言條件編碼,可以選取出圖8中的基于正則表達式的提取方式編碼作為硬編方式的斷言條件,以便可以基于正則表達式來硬編碼實現斷言條件。
94.作為一種示例,如圖9所示,在對http響應頭進行設置時,可以顯示包括參數名稱、操作符、參數值的待填充窗口,用戶可以通過對上述待填充窗口進行數據填充,從而完成對斷言條件的http響應頭的設定。
95.作為一種示例,如圖10所示,在對http響應碼進行設置時,可以顯示響應碼的待填充窗口,用戶可以通過對上述待填充窗口進行數據填充,從而完成對斷言條件的http響應頭的設定。
96.350、根據上述業務接口和上述斷言條件對上述業務流程圖進行解析,生成測試程序。
97.360、運行上述測試程序,得到測試結果。
98.示例性地,業務場景通過用戶在可視化編輯界面上編排完成之后,在執行過程中,計算機可以通過解析器解析圖形化的接口流轉關系,并通過調度器從起點業務接口開始依次執行,從而實現對業務場景的測試。
99.示例性地,業務場景測試完成以后,即測試程序執行以后,計算機可以展示測試結果,即如圖11所示的執行日志列表,執行列表中可以顯示多次測試對應的執行日志。另外,在執行日志列表中還可以查看執行的測試程序對應日志名稱、狀態執行時間以及查看日志詳情等選項。
100.當用戶點擊查看日志詳情的選項時,計算機可以響應該操作,展示執行日志詳情界面,作為一種示例,日志詳情界面可以如圖12和圖13所示,日志詳情界面可以包括各業務接口的調用情況,具體可以通過時間軸的方式展示該調用情況。其中,圖12示出了一種測試結果為正常情況下的執行日志詳情,圖13示出了一種測試結果為故障情況下的執行日志詳情。
101.可以理解的是,在可視化編輯界面中,每個節點圖標代表一個業務api接口,而每個接口都包含請求參數以及響應體,響應體包括響應數據(即上述http響應數據)、響應頭(即上述http響應頭)和響應碼(即上述http響應碼)。
102.節點圖標之間通過箭頭連線表示接口之間的流轉關系,箭頭連線上可以進行斷言條件設置。
103.斷言可以通過使用參數提取的方式進行設置,響應數據支持使用jsonpath表達式、xpath表達式、正則表達式和字符串截取中的至少一種方式進行提取,其中,jsonpath又支持從以樹結構展示的響應json格式數據拖拽式生成表達式并設置斷言,響應頭則通過下拉列表選取方式設置斷言,響應碼通過和http標準狀態碼進行匹配判定業務接口請求執行狀態。
104.其中,斷言是一個包含布爾表達式的語句,響應體參數提取則可以從上游接口提取諸于接口請求狀態和業務執行流轉條件信息,從響應體中提取的各種參數的值可以和一個預設的值進行布爾邏輯比較,如果為真表示可以繼續向滿足條件的下游業務邏輯分支進行流轉,直到所有下游業務邏輯分支的斷言條件均為假,則測試流程到此終止并給出業務流程終止執行的原因。
105.在實際應用中,以電商支付場景的業務流程為例,通過本實施例的測試程序自動生成方法,可擴展成如圖14所示的自動化執行的業務流程,也就是電商支付場景的業務流程的測試用例拆解示意圖。
106.可見,在圖14中,可以通過斷言條件的自動判斷和流轉,并結合上下游接口之間的請求體入參和響應體出參數據,就可以自動化動態模擬多條線的測試用例執行過程。
107.可選地,為了滿足業務場景測試流程自動化執行的過程,前置接口也提供了響應
頭基于k-v鍵值對的方式進行參數提取,響應數據基于jsonpath手填方式和/或可視化拖拽方式生成表達式、xpath表達式、正則表達式和字符串截取的方式進行參數提取,并以參數變量的形式提供給后置接口使用。后置接口請求參數設置時,即可通過下拉選擇所有前置接口提供的參數變量,通過參數引用“$(參數名稱)”占位符的方式按需引用參數。
108.業務場景通過可視化編輯界面對業務產經編排完成之后,在后續執行過程中,計算機可以通過解析器解析圖形化的接口流轉關系,并通過調度器從起點業務接口開始依次執行。
109.當上游接口執行完成返回響應體數據之后,調度器根據參數提取表達式從響應體數據中提取參數,并啟動斷言條件執行提取參數和預設值之間的布爾邏輯判斷,從而決定流轉的下游業務邏輯分支。
110.可見,本實施例的業務測試方法,針對相關技術中的業務測試過程中業務場景梳理過程復雜,測試用例分析及建立過程工作量龐大的問題,借鑒了工作流引擎的思路,提出了一種通過拖拽式的可視化業務流程編排方式,并結合斷言處理流程之間的流轉條件,斷言條件會自動控制測試過程中的業務流轉過程。其中,通過可視化的拖拉拽界面,可以更加直觀的分析并查看測試業務場景的建立過程和業務流轉關系,真正做到了從業務場景的角度出發進行業務測試用例編排。一個場景囊括了完整的業務測試過程和業務邏輯流轉關系,從而大大降低了一條條分析并建立測試用例的工作量和繁瑣過程,有效提升了測試效率。
111.圖15是根據一示例性實施例示出的一種業務測試裝置的框圖,如圖15所示,該業務測試裝置40可以包括:業務流程圖構建模塊41,用于基于當前業務流程,建立業務流程圖,上述業務流程圖包括多個節點圖標以及上述多個節點圖標之間流轉關系,每一上述節點圖標對應一個業務接口,每一上述流轉關系對應一個斷言條件。
112.測試代碼生成模塊42,用于對上述業務流程圖進行解析,得到測試代碼,上述測試代碼用于對上述多個節點圖標對應的業務接口進行調用。
113.測試模塊43,用于運行上述測試代碼,以對上述當前業務流程進行業務測試。
114.關于上述實施例中的裝置,其中各個模塊執行操作的具體方式已經在有關該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。
115.圖16是根據一示例性實施例示出的一種電子設備700的框圖。如圖16所示,該電子設備700可以包括:處理器701,存儲器702。該電子設備700還可以包括i/o接口704(即輸入/輸出接口),以及通信組件705中的一者或多者。
116.其中,處理器701用于控制該電子設備700的整體操作,以完成上述的電機控制方法中的全部或部分步驟。存儲器702用于存儲各種類型的數據以支持在該電子設備700的操作,這些數據例如可以包括用于在該電子設備700上操作的任何應用程序或方法的指令,以及應用程序相關的數據,例如聯系人數據、收發的消息、圖片、音頻、視頻等等。該存儲器702可以由任何類型的易失性或非易失性存儲設備或者它們的組合實現,例如靜態隨機存取存儲器(static random access memory,簡稱sram),電可擦除可編程只讀存儲器(electrically erasable programmable read-only memory,簡稱eeprom),可擦除可編程只讀存儲器(erasable programmable read-only memory,簡稱eprom),可編程只讀存儲器
(programmable read-only memory,簡稱prom),只讀存儲器(read-only memory,簡稱rom),磁存儲器,快閃存儲器,磁盤或光盤。i/o接口704為處理器701和其他接口模塊之間提供接口,上述其他接口模塊可以是鍵盤,鼠標,按鈕、顯示器(如觸控屏)等。這些按鈕可以是虛擬按鈕或者實體按鈕。通信組件705用于該電子設備700與其他設備之間進行有線或無線通信。無線通信,例如wi-fi,藍牙,近場通信(near field communication,簡稱nfc),2g、3g、4g、nb-iot、emtc、或其他5g等等,或它們中的一種或幾種的組合,在此不做限定。因此相應的該通信組件705可以包括:wi-fi模塊,藍牙模塊,nfc模塊等等。
117.在一示例性實施例中,電子設備700可以被一個或多個應用專用集成電路(application specific integrated circuit,簡稱asic)、數字信號處理器(digital signal processor,簡稱dsp)、數字信號處理設備(digital signal processing device,簡稱dspd)、可編程邏輯器件(programmable logic device,簡稱pld)、現場可編程門陣列(field programmable gate array,簡稱fpga)、控制器、微控制器、微處理器或其他電子元件實現,用于執行上述的電機控制方法。
118.在另一示例性實施例中,還提供了一種包括程序指令的計算機可讀存儲介質,該程序指令被處理器執行時實現上述的電機控制方法的步驟。例如,該計算機可讀存儲介質可以為上述包括程序指令的存儲器702,上述程序指令可由電子設備700的處理器701執行以完成上述的電機控制方法。
119.以上結合附圖詳細描述了本公開的優選實施方式,但是,本公開并不限于上述實施方式中的具體細節,在本公開的技術構思范圍內,可以對本公開的技術方案進行多種簡單變型,這些簡單變型均屬于本公開的保護范圍。
120.另外需要說明的是,在上述具體實施方式中所描述的各個具體技術特征,在不矛盾的情況下,可以通過任何合適的方式進行組合,為了避免不必要的重復,本公開對各種可能的組合方式不再另行說明。
121.此外,本公開的各種不同的實施方式之間也可以進行任意組合,只要其不違背本公開的思想,其同樣應當視為本公開所公開的內容。

技術特征:


1.一種業務測試方法,其特征在于,包括:基于當前業務流程,建立業務流程圖,所述業務流程圖包括多個節點圖標以及所述多個節點圖標之間流轉關系,每一所述節點圖標對應一個業務接口,每一所述流轉關系對應一個斷言條件;對所述業務流程圖進行解析,得到測試代碼,所述測試代碼用于對所述多個節點圖標對應的業務接口進行調用;運行所述測試代碼,以對所述當前業務流程進行業務測試。2.根據權利要求1所述的方法,其特征在于,所述基于當前業務流程,建立業務流程圖,包括:顯示可視化編輯界面,所述可視化編輯界面包括多個節點圖標;響應于用戶對所述多個節點圖標做出的第一操作,生成所述多個節點圖標的整體關系圖,所述整體關系圖表明所述多個節點圖標之間的流轉關系,其中,所述第一操作包括拖拽操作和連接操作;針對所述整體關系圖中的每一節點圖標,響應于用戶的第二操作,為所述節點圖標設定與所述第二操作對應的業務接口;針對所述整體關系圖中各節點圖標之間的流轉關系,響應用戶的第三操作,為所述流轉關系設定與所述第三操作對應的斷言條件;將設定好業務接口和斷言條件的整體關系圖作為所述業務流程圖。3.根據權利要求2所述的方法,其特征在于,所述第二操作包括第一子操作和第二子操作,所述響應于用戶的第二操作,為所述節點圖標設定與所述第二操作對應的業務接口,包括:響應于用戶對所述節點圖標做出的所述第一子操作,展示接口列表,所述接口列表包括多個業務接口對應的選項;響應于用戶對所述接口列表做出的所述第二子操作,從所述接口列表中確定與所述第二子操作對應的目標業務接口,并將所述目標業務接口與所述節點圖標關聯。4.根據權利要求3所述的方法,其特征在于,所述第二操作還包括第三子操作,所述響應于用戶的第二操作,為所述節點圖標設定與所述第二操作對應的業務接口,還包括:響應于用戶的第三子操作,進入所述節點圖標對應的業務接口的接口參數設置界面;響應于用戶在所述接口參數設置界面中的參數設置操作,對所述業務接口的請求參數和提取參數進行配置,其中,所述請求參數包括參數名稱、參數類型以及參數值。5.根據權利要求3所述的方法,其特征在于,在所述響應于用戶對所述節點圖標做出的所述第一子操作,展示接口列表,所述接口列表包括多個業務接口對應的選項之后,還包括:獲取當前節點圖標對應的參考節點圖標,所述當前節點圖標為用戶當前正在配置的節點圖標,所述參考節點圖標的流轉關系在所述當前節點圖標之前,且所述參考節點圖標已經配置好了業務接口;根據所述參考節點圖標對應的業務接口,從預設的多個業務場景中確定目標業務場景;根據所述目標業務場景更新所述接口列表的選項排序。
6.根據權利要求5所述的方法,其特征在于,所述根據所述目標業務場景更新所述接口列表的選項排序,包括:從預設的多個業務接口中獲取與所述目標業務場景對應的常用業務接口;將所述接口列表中從上到下排列的前n個選項替換為所述常用業務接口對應的選項,其中n為正整數。7.根據權利要求2至5任一項所述的方法,其特征在于,所述第三操作包括第五子操作和第六子操作,所述響應用戶的第三操作,為所述流轉關系設定與所述第三操作對應的斷言條件,包括:響應于所述第五子操作,進入所述流轉關系的斷言設置界面;響應于用戶在所述斷言設置界面做出的所述第六子操作,確定所述流轉關系的斷言條件,其中,第六子操作包括:在所述斷言設置界面顯示的斷言條件編碼列表中,選取出斷言目標編碼的操作,或者在所述斷言設置界面顯示的多段斷言條件編碼中,對至少一段的斷言條件編碼的拖拽操作。8.一種業務測試裝置,其特征在于,包括:業務流程圖構建模塊,用于基于當前業務流程,建立業務流程圖,所述業務流程圖包括多個節點圖標以及所述多個節點圖標之間流轉關系,每一所述節點圖標對應一個業務接口,每一所述流轉關系對應一個斷言條件;測試代碼生成模塊,用于對所述業務流程圖進行解析,得到測試代碼,所述測試代碼用于對所述多個節點圖標對應的業務接口進行調用;測試模塊,用于運行所述測試代碼,以對所述當前業務流程進行業務測試。9.一種電子設備,其特征在于,包括:存儲器,其上存儲有計算機程序;處理器,用于執行所述存儲器中的所述計算機程序,以實現權利要求1至7中任一項所述方法的步驟。10.一種非臨時性計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,該程序被處理器執行時實現權利要求1至7中任一項所述方法的步驟。

技術總結


本公開涉及一種業務測試方法、裝置、電子設備及存儲介質,該方法包括:基于當前業務流程,建立業務流程圖,所述業務流程圖包括多個節點圖標以及所述多個節點圖標之間流轉關系,每一所述節點圖標對應一個業務接口,每一所述流轉關系對應一個斷言條件;對所述業務流程圖進行解析,得到測試代碼,所述測試代碼用于對所述多個節點圖標對應的業務接口進行調用;運行所述測試代碼,以對所述當前業務流程進行業務測試。本公開可以有效提升對業務流程的測試效率。效率。效率。


技術研發人員:

劉有根 龍義 李云鵬 李飛

受保護的技術使用者:

四川無限智達科技有限公司

技術研發日:

2022.11.15

技術公布日:

2023/1/19


文章投稿或轉載聲明

本文鏈接:http://m.newhan.cn/zhuanli/patent-1-80679-0.html

來源:專利查詢檢索下載-實用文體寫作網版權所有,轉載請保留出處。本站文章發布于 2023-01-26 22:38:54

發表評論

驗證碼:
用戶名: 密碼: 匿名發表
評論列表 (有 條評論
2人圍觀
參與討論