一種業(yè)務(wù)系統(tǒng)造數(shù)方法、裝置、終端設(shè)備及存儲介質(zhì)
技術(shù)領(lǐng)域
[0001] 本申請涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種業(yè)務(wù)系統(tǒng)造數(shù)方法、裝置、終端設(shè)備及存儲介質(zhì)。
背景技術(shù)
[0002] 在銀行信貸核心系統(tǒng)中,所有業(yè)務(wù)處理均依賴于核心系統(tǒng)的會計(jì)日期,該日期對核心系統(tǒng)來說至關(guān)重要。目前會計(jì)日期存儲在數(shù)據(jù)庫表中,正常情況下該日期在銀行每日的日終處理任務(wù)后切換到新的日期。由于會計(jì)日期在系統(tǒng)中是唯一的,且所有交易強(qiáng)依賴于該全局變量,而現(xiàn)實(shí)測試場景中,往往又是多個(gè)測試人員并行測試,由于各自負(fù)責(zé)模塊和測試場景的不同,會造成多名測試人員同一時(shí)間段內(nèi),對系統(tǒng)會計(jì)日期進(jìn)行爭搶的狀況,從而導(dǎo)致測試效率低下。
[0003] 現(xiàn)有技術(shù)方案:在所有的信貸核心相關(guān)的聯(lián)機(jī)接口中,統(tǒng)一冗余一個(gè)日期字段,測試人員在測試的時(shí)候,可以通過該字段指定系統(tǒng)會計(jì)日期,代碼內(nèi)通過判斷該字段是否有值,來確定是否需要從數(shù)據(jù)庫中獲取會計(jì)日期。這種方案雖然解決了測試人員的痛點(diǎn),提升了測試的效率,但是同時(shí)也帶來了新的問題——即對原有代碼邏輯具有侵入性,而且由于新增的日期字段在真實(shí)業(yè)務(wù)場景中不應(yīng)該存在,所以也增加了產(chǎn)生生產(chǎn)漏洞的幾率。
發(fā)明內(nèi)容
[0004] 有鑒于此,本申請實(shí)施例提供一種業(yè)務(wù)系統(tǒng)造數(shù)方法、裝置、終端設(shè)備及存儲介質(zhì),可以有效解決測試效率底下的問題等。
[0005] 第一方面,本申請實(shí)施例提供一種業(yè)務(wù)系統(tǒng)造數(shù)方法,包括:
[0006] 根據(jù)流程ID獲取流程場景表對應(yīng)的業(yè)務(wù)流程明細(xì)表,其中,一個(gè)流程場景表對應(yīng)至少一個(gè)業(yè)務(wù)流程明細(xì)表,一個(gè)所述業(yè)務(wù)流程明細(xì)表對應(yīng)一個(gè)子場景;
[0007] 按照所述業(yè)務(wù)流程明細(xì)表的順序依次獲取所述子場景對應(yīng)的造數(shù)任務(wù),并執(zhí)行所述造數(shù)任務(wù),獲得各個(gè)子場景下的造數(shù)結(jié)果;
[0008] 其中,在執(zhí)行每一個(gè)子場景的造數(shù)任務(wù)前,調(diào)取對應(yīng)所述業(yè)務(wù)流程明細(xì)表中業(yè)務(wù)日期,并將其保存至本地緩存;在執(zhí)行所述子場景的造數(shù)任務(wù)時(shí),若調(diào)用子場景中的會計(jì)日期,則獲取所述本地緩存中的所述業(yè)務(wù)日期作為所述子場景的會計(jì)日期。
[0009] 在一些實(shí)施例中,在執(zhí)行每一個(gè)子場景的造數(shù)任務(wù)前,調(diào)取對應(yīng)所述業(yè)務(wù)流程明細(xì)表中業(yè)務(wù)日期,并將其保存至本地緩存;在執(zhí)行所述子場景的造數(shù)任務(wù)時(shí),若調(diào)用子場景中的會計(jì)日期,則獲取所述本地緩存中的所述業(yè)務(wù)日期作為所述子場景的會計(jì)日期,包括:
[0010] 調(diào)用所述子場景對應(yīng)的業(yè)務(wù)接口;
[0011] 判斷所述子場景對應(yīng)的所述業(yè)務(wù)流程明細(xì)表是否有業(yè)務(wù)日期;
[0012] 若有,則將所述業(yè)務(wù)日期作為本地變量保存至本地緩存中;
[0013] 在執(zhí)行所述子場景的造數(shù)任務(wù)時(shí),若所述業(yè)務(wù)系統(tǒng)接收到調(diào)用系統(tǒng)當(dāng)前的會計(jì)日期的請求,則攔截所述調(diào)用系統(tǒng)當(dāng)前的會計(jì)日期的請求,并將所述本地緩存中的所述業(yè)務(wù)日期作為會計(jì)日期進(jìn)行返回。
[0014] 在一些實(shí)施例中,所述根據(jù)流程ID獲取流程場景表對應(yīng)的業(yè)務(wù)流程明細(xì)表,包括:
[0015] 根據(jù)所述流程ID判斷是否有包含所述流程ID的流程場景表;
[0016] 若有,則根據(jù)所述流程ID判斷是否有包含所述流程ID的業(yè)務(wù)流程明細(xì)表。
[0017] 在一些實(shí)施例中,所述根據(jù)所述流程ID判斷是否有包含所述流程ID的業(yè)務(wù)流程明細(xì)表之后,還包括:
[0018] 根據(jù)所述流程場景表中包含的子場景判斷是否包含每個(gè)子場景對應(yīng)的業(yè)務(wù)流程明細(xì)表;
[0019] 若有,則根據(jù)業(yè)務(wù)系統(tǒng)的流程順序判斷業(yè)務(wù)流程明細(xì)表的順序是否正確。
[0020] 在一些實(shí)施例中,所述按所述業(yè)務(wù)流程明細(xì)表的順序依次執(zhí)行所述子場景的造數(shù)任務(wù)之前,還包括:
[0021] 根據(jù)所述子場景和配置的基本業(yè)務(wù)參數(shù),模擬生成所述子場景需要的調(diào)用參數(shù)。
[0022] 在一些實(shí)施例中,?在執(zhí)行第一個(gè)所述子場景的造數(shù)任務(wù)前,初始化流程實(shí)例,其中所述流程實(shí)例包括子場景ID、執(zhí)行到哪個(gè)步驟、執(zhí)行結(jié)果和結(jié)果描述;
[0023] 每執(zhí)行完一個(gè)子場景,在執(zhí)行下一個(gè)子場景時(shí),需更新流程實(shí)例。
[0024] 在一些實(shí)施例中,每執(zhí)行完一個(gè)子場景的造數(shù)任務(wù)后,刪除所述本地緩存中的業(yè)務(wù)日期。
[0025] 在一些實(shí)施例中,若所述子場景為多線程場景,在執(zhí)行所述子場景的造數(shù)任務(wù)時(shí)包括:
[0026] 調(diào)用所述子場景對應(yīng)的業(yè)務(wù)接口;
[0027] 第一線程獲取了所述業(yè)務(wù)流程明細(xì)表中的所述業(yè)務(wù)日期,并執(zhí)行所述第一線程對應(yīng)的造數(shù)任務(wù);
[0028] 保存所述第一線程對應(yīng)所述業(yè)務(wù)日期為初始業(yè)務(wù)日期;
[0029] 當(dāng)除所述第一線程外的其他線程獲取所述業(yè)務(wù)流程明細(xì)表中的所述業(yè)務(wù)日期時(shí),將與所述初始業(yè)務(wù)日期返回給獲取所述業(yè)務(wù)流程明細(xì)表中的所述業(yè)務(wù)日期的線程;
[0030] 所述初始業(yè)務(wù)日期根據(jù)執(zhí)行完成的各個(gè)線程的最后的日期進(jìn)行更新。
[0031] 第二方面,本申請實(shí)施例提供一種業(yè)務(wù)系統(tǒng)造數(shù)裝置,包括: