本發(fā)明涉及軟件開(kāi)發(fā)和測(cè)試過(guò)程中對(duì)依賴接口的一種仿真模擬支持,尤其涉及一種應(yīng)用的模擬方法、模擬應(yīng)用及其運(yùn)作方法以及模擬系統(tǒng)。
背景技術(shù):
在軟件的功能測(cè)試過(guò)程中,為了驗(yàn)證一個(gè)場(chǎng)景的功能,需要不停地構(gòu)造數(shù)據(jù)。尤其對(duì)于不熟悉的外部功能模塊等依賴服務(wù),還需要外部人員的協(xié)作支持,導(dǎo)致測(cè)試效率低下,且測(cè)試難度和場(chǎng)景維護(hù)難度均較大。而在性能的壓力測(cè)試過(guò)程中,對(duì)于另一些依賴服務(wù),如對(duì)外部依賴多的接口,一旦壓力測(cè)試的結(jié)果判斷出存在性能問(wèn)題時(shí),對(duì)性能問(wèn)題的定位排查就需要不斷排除依賴接口,才能最終確定問(wèn)題根源,導(dǎo)致效率不高且重復(fù)性多。可見(jiàn),軟件測(cè)試過(guò)程中對(duì)外部依賴服務(wù)無(wú)法執(zhí)行可靠的控制。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問(wèn)題是為了克服現(xiàn)有技術(shù)中的軟件測(cè)試時(shí),依賴外部功能模塊或外部接口時(shí)導(dǎo)致測(cè)試效率低下和測(cè)試難度較大,進(jìn)而對(duì)外部依賴服務(wù)無(wú)法執(zhí)行可靠的控制的缺陷,提供一種應(yīng)用的模擬方法、模擬應(yīng)用及其運(yùn)作方法以及模擬系統(tǒng)。
本發(fā)明是通過(guò)以下技術(shù)方案解決上述技術(shù)問(wèn)題的:
一種應(yīng)用的模擬方法,其特點(diǎn)在于,包括:
s1、解析一應(yīng)用的api(applicationprogramminginterface,應(yīng)用程序接口)的metadata(元數(shù)據(jù))地址;
s2、配置所述應(yīng)用的模擬響應(yīng)數(shù)據(jù);
s3、根據(jù)步驟s1中解析的結(jié)果和所述模擬響應(yīng)數(shù)據(jù)生成一總線模擬地址和一應(yīng)用模擬地址;
s4、將所述總線模擬地址和所述應(yīng)用模擬地址應(yīng)用至所述應(yīng)用;
s5、所述總線模擬地址根據(jù)一應(yīng)用模擬請(qǐng)求執(zhí)行對(duì)所述應(yīng)用的路由或者以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由。
較佳地,步驟s2包括:
s21、輸入一模擬對(duì)象;
s22、生成所述模擬對(duì)象的元數(shù)據(jù);
s23、解析所述元數(shù)據(jù);
s24、建立所述元數(shù)據(jù)和與所述元數(shù)據(jù)對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù)的映射關(guān)系;
s25、存儲(chǔ)所述模擬響應(yīng)數(shù)據(jù)和所述映射關(guān)系。
較佳地,包括:
sa1、在所述應(yīng)用上部署一模擬服務(wù)代理,所述模擬服務(wù)代理用于在接收到一控制指令時(shí)執(zhí)行對(duì)所述總線模擬地址和所述應(yīng)用模擬地址的應(yīng)用、解除或者監(jiān)控。
本發(fā)明還提供一種模擬應(yīng)用,其特點(diǎn)在于,其利用如上所述的應(yīng)用的模擬方法形成,包括一第一解析模塊、一配置模塊、一地址生成模塊、一應(yīng)用模塊和一路由模塊;
所述第一解析模塊用于解析一應(yīng)用的api的metadata地址;
所述配置模塊用于配置所述應(yīng)用的模擬響應(yīng)數(shù)據(jù);
所述地址生成模塊用于根據(jù)所述第一解析模塊解析的結(jié)果和所述模擬響應(yīng)數(shù)據(jù)生成一總線模擬地址和一應(yīng)用模擬地址;
所述應(yīng)用模塊用于將所述總線模擬地址和所述應(yīng)用模擬地址應(yīng)用至所述應(yīng)用;
所述路由模塊用于根據(jù)一應(yīng)用模擬請(qǐng)求執(zhí)行對(duì)所述應(yīng)用的路由或者以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由。
較佳地,所述配置模塊包括一輸入模塊、一元數(shù)據(jù)生成模塊、一第二解析模塊、一映射關(guān)系建立模塊和一存儲(chǔ)模塊;
所述輸入模塊用于輸入一模擬對(duì)象;
所述元數(shù)據(jù)生成模塊用于生成所述模擬對(duì)象的元數(shù)據(jù);
所述第二解析模塊用于解析所述元數(shù)據(jù);
所述映射關(guān)系建立模塊用于建立所述元數(shù)據(jù)和與所述元數(shù)據(jù)對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù)的映射關(guān)系;
所述存儲(chǔ)模塊用于存儲(chǔ)所述模擬響應(yīng)數(shù)據(jù)和所述映射關(guān)系。
本發(fā)明還提供一種模擬應(yīng)用的運(yùn)作方法,其特點(diǎn)在于,其利用如上所述的模擬應(yīng)用實(shí)現(xiàn),包括:
s1、根據(jù)所述應(yīng)用模擬請(qǐng)求以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由;
s2、根據(jù)一用戶請(qǐng)求的請(qǐng)求頭的格式執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的編碼適配;
s3、對(duì)所述模擬響應(yīng)數(shù)據(jù)執(zhí)行規(guī)則匹配和用戶契約檢查;
s4、返回所述模擬響應(yīng)數(shù)據(jù)。
較佳地,包括:
s5、統(tǒng)計(jì)所述應(yīng)用在多個(gè)時(shí)間段被調(diào)用的參數(shù)信息,所述參數(shù)信息包括調(diào)用次數(shù)、來(lái)源ip(internetprotocol,互聯(lián)網(wǎng)協(xié)議地址)、響應(yīng)時(shí)長(zhǎng)以及請(qǐng)求地址四個(gè)字段中的一項(xiàng)或多項(xiàng);
較佳地,包括:
s6、根據(jù)所述參數(shù)信息中的一個(gè)或多個(gè)字段聚合所述參數(shù)信息。
本發(fā)明還提供一種模擬系統(tǒng),其特點(diǎn)在于,其利用如上所述的模擬應(yīng)用的運(yùn)作方法工作,包括:一第一解析模塊、一配置模塊、一地址生成模塊、一應(yīng)用模塊、一路由模塊、一編碼適配模塊、一規(guī)則匹配和檢查模塊以及一數(shù)據(jù)返回模塊;
所述第一解析模塊用于解析一應(yīng)用的api的metadata地址;
所述配置模塊用于配置所述應(yīng)用的模擬響應(yīng)數(shù)據(jù);
所述地址生成模塊用于根據(jù)所述第一解析模塊解析的結(jié)果和所述模擬響應(yīng)數(shù)據(jù)生成一總線模擬地址和一應(yīng)用模擬地址;
所述應(yīng)用模塊用于將所述總線模擬地址和所述應(yīng)用模擬地址應(yīng)用至所述應(yīng)用;
所述路由模塊用于根據(jù)一應(yīng)用模擬請(qǐng)求執(zhí)行對(duì)所述應(yīng)用的路由或者以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由;
所述編碼適配模塊用于根據(jù)一用戶請(qǐng)求的請(qǐng)求頭的格式執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的編碼適配;
所述規(guī)則匹配和檢查模塊用于對(duì)所述模擬響應(yīng)數(shù)據(jù)執(zhí)行規(guī)則匹配和用戶契約檢查;
所述數(shù)據(jù)返回模塊用于返回所述模擬響應(yīng)數(shù)據(jù)。
較佳地,所述配置模塊包括一輸入模塊、一元數(shù)據(jù)生成模塊、一第二解析模塊、一映射關(guān)系建立模塊和一存儲(chǔ)模塊;
所述輸入模塊用于輸入一模擬對(duì)象;
所述元數(shù)據(jù)生成模塊用于生成所述模擬對(duì)象的元數(shù)據(jù);
所述第二解析模塊用于解析所述元數(shù)據(jù);
所述映射關(guān)系建立模塊用于建立所述元數(shù)據(jù)和與所述元數(shù)據(jù)對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù)的映射關(guān)系;
所述存儲(chǔ)模塊用于存儲(chǔ)所述模擬響應(yīng)數(shù)據(jù)和所述映射關(guān)系。
本發(fā)明的積極進(jìn)步效果在于:本發(fā)明通過(guò)對(duì)應(yīng)用的模擬,能夠模擬應(yīng)用在研發(fā)和測(cè)試過(guò)程中的實(shí)際行為操作,實(shí)現(xiàn)了在軟件研發(fā)和測(cè)試過(guò)程中對(duì)依賴外部功能模塊或者是外部接口等應(yīng)用的替代。對(duì)于軟件功能測(cè)試,能夠?yàn)闇y(cè)試場(chǎng)景服務(wù),測(cè)試時(shí)不再依賴于外部應(yīng)用模塊的負(fù)責(zé)人員的協(xié)作支持,而自身即可通過(guò)事先模擬好的應(yīng)用替代執(zhí)行場(chǎng)景測(cè)試,提高了測(cè)試效率、大大降低了場(chǎng)景維護(hù)難度。對(duì)于軟件性能測(cè)試,利用模擬應(yīng)用替代外部應(yīng)用或接口,能夠明確掌控外部應(yīng)用或接口的性能狀況,可執(zhí)行大并發(fā)的壓力測(cè)試,不再受外部第三方接口或模塊本身的影響,降低了問(wèn)題排除難度,提高了測(cè)試效率,實(shí)現(xiàn)了性能問(wèn)題應(yīng)用級(jí)別的安全隔離,也實(shí)現(xiàn)了外部依賴服務(wù)的可靠控制。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例1的應(yīng)用的模擬方法的流程圖。
圖2為本發(fā)明實(shí)施例2的模擬應(yīng)用的結(jié)構(gòu)示意圖。
圖3為本發(fā)明實(shí)施例3的模擬應(yīng)用的運(yùn)作方法的流程圖。
圖4為本發(fā)明實(shí)施例4的模擬系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面通過(guò)實(shí)施例的方式進(jìn)一步說(shuō)明本發(fā)明,但并不因此將本發(fā)明限制在所述的實(shí)施例范圍之中。
實(shí)施例1
本實(shí)施例提供應(yīng)用的模擬方法,如圖1所示。其中,該應(yīng)用可為:功能模塊、應(yīng)用接口、提供某類服務(wù)的應(yīng)用等。本實(shí)施例將研發(fā)或測(cè)試時(shí)依賴于外部的功能模塊、接口、應(yīng)用等服務(wù)稱為依賴服務(wù)。
該模擬方法包括:
101、解析一應(yīng)用的api的metadata地址;
如應(yīng)用場(chǎng)景可為:對(duì)應(yīng)用a進(jìn)行測(cè)試,應(yīng)用a在測(cè)試過(guò)程中會(huì)調(diào)用外部應(yīng)用b,本實(shí)施例則是對(duì)應(yīng)用b的模擬替代。應(yīng)用b可以是一web應(yīng)用(網(wǎng)絡(luò)應(yīng)用),用戶在網(wǎng)絡(luò)終端可以通過(guò)瀏覽器訪問(wèn)應(yīng)用b。該步驟為解析應(yīng)用b的api的metadata地址。
102、配置所述應(yīng)用的模擬響應(yīng)數(shù)據(jù);
具體地,步驟102包括:
1021、輸入一模擬對(duì)象;
1022、生成所述模擬對(duì)象的元數(shù)據(jù);
1023、解析所述元數(shù)據(jù);
1024、建立所述元數(shù)據(jù)和與所述元數(shù)據(jù)對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù)的映射關(guān)系;
1025、存儲(chǔ)所述模擬響應(yīng)數(shù)據(jù)和所述映射關(guān)系。
也即,針對(duì)要模擬的應(yīng)用b內(nèi)的各模擬對(duì)象,建立與之配對(duì)的要返回的模擬響應(yīng)數(shù)據(jù),該模擬響應(yīng)數(shù)據(jù)可包括服務(wù)名稱、操作方法名稱、響應(yīng)數(shù)據(jù)等。
103、根據(jù)步驟101中解析的結(jié)果和所述模擬響應(yīng)數(shù)據(jù)生成一總線模擬地址和一應(yīng)用模擬地址;
104、將所述總線模擬地址和所述應(yīng)用模擬地址應(yīng)用至所述應(yīng)用;該應(yīng)用部署在目標(biāo)應(yīng)用服務(wù)器中。此處應(yīng)用為應(yīng)用b。
105、所述總線模擬地址根據(jù)一應(yīng)用模擬請(qǐng)求執(zhí)行對(duì)所述應(yīng)用的路由或者以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由。
也即,當(dāng)應(yīng)用已經(jīng)啟用了模擬總線的情況下,當(dāng)用戶請(qǐng)求模擬服務(wù)的時(shí)候,模擬總線將會(huì)根據(jù)用戶配置決定是否走模擬服務(wù)。當(dāng)模擬服務(wù)被開(kāi)啟的時(shí)候,將返回用戶配置的模擬響應(yīng)數(shù)據(jù)。反之,則路由對(duì)應(yīng)的真實(shí)服務(wù),即路由至應(yīng)用b。
其中,在所述應(yīng)用上部署一模擬服務(wù)代理,所述模擬服務(wù)代理用于在接收到一控制指令時(shí)執(zhí)行對(duì)所述總線模擬地址和所述應(yīng)用模擬地址的應(yīng)用、解除或者監(jiān)控。即將本實(shí)施例模擬完成后的模擬服務(wù)應(yīng)用至應(yīng)用b上,或者從應(yīng)用b上解除,或者執(zhí)行對(duì)模擬服務(wù)的監(jiān)控。
因此,在a調(diào)用b時(shí),按照本實(shí)施例對(duì)應(yīng)用b的模擬方法,可以實(shí)現(xiàn)對(duì)應(yīng)用b的依賴替代,針對(duì)需要向b獲取的返回內(nèi)容,均可按本實(shí)施例的模擬方法獲得相應(yīng)的模擬響應(yīng)數(shù)據(jù)。實(shí)現(xiàn)了對(duì)應(yīng)用b的依賴隔離,提高了對(duì)應(yīng)用a的測(cè)試效率和對(duì)外部依賴服務(wù)的可靠控制。
實(shí)施例2
本實(shí)施例提供一種模擬應(yīng)用,如圖2所示,其利用實(shí)施例1所述的應(yīng)用的模擬方法形成,包括一第一解析模塊1、一配置模塊2、一地址生成模塊3、一應(yīng)用模塊4和一路由模塊5;
所述第一解析模塊1用于解析一應(yīng)用的api的metadata地址;
所述配置模塊2用于配置所述應(yīng)用的模擬響應(yīng)數(shù)據(jù);
所述地址生成模塊3用于根據(jù)所述第一解析模塊解析的結(jié)果和所述模擬響應(yīng)數(shù)據(jù)生成一總線模擬地址和一應(yīng)用模擬地址;
所述應(yīng)用模塊4用于將所述總線模擬地址和所述應(yīng)用模擬地址應(yīng)用至所述應(yīng)用;
所述路由模塊5用于根據(jù)一應(yīng)用模擬請(qǐng)求執(zhí)行對(duì)所述應(yīng)用的路由或者以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由。
所述配置模塊2包括一輸入模塊21、一元數(shù)據(jù)生成模塊22、一第二解析模塊23、一映射關(guān)系建立模塊24和一存儲(chǔ)模塊25;
所述輸入模塊21用于輸入一模擬對(duì)象;
所述元數(shù)據(jù)生成模塊22用于生成所述模擬對(duì)象的元數(shù)據(jù);
所述第二解析模塊23用于解析所述元數(shù)據(jù);
所述映射關(guān)系建立模塊24用于建立所述元數(shù)據(jù)和與所述元數(shù)據(jù)對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù)的映射關(guān)系;
所述存儲(chǔ)模塊25用于存儲(chǔ)所述模擬響應(yīng)數(shù)據(jù)和所述映射關(guān)系。
該模擬應(yīng)用可為一web應(yīng)用,該模擬應(yīng)用部署在網(wǎng)絡(luò)服務(wù)器上,對(duì)外提供模擬服務(wù)的核心服務(wù)。模擬應(yīng)用配置至應(yīng)用b上之后,能夠?qū)崿F(xiàn)對(duì)依賴服務(wù)b的模擬替代。
實(shí)施例3
一種模擬應(yīng)用的運(yùn)作方法,如圖3所示,其利用如上所述的模擬應(yīng)用實(shí)現(xiàn),包括:
201、根據(jù)所述應(yīng)用模擬請(qǐng)求以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由;
202、根據(jù)一用戶請(qǐng)求的請(qǐng)求頭的格式執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的編碼適配;
其中,編碼適配包括對(duì)格式為text(文本)、xml(可擴(kuò)展標(biāo)記語(yǔ)言)、json(一種輕量級(jí)的數(shù)據(jù)交換格式)和x-protobuf(跨平臺(tái)的結(jié)構(gòu)化數(shù)據(jù)表示方法)等。
203、對(duì)所述模擬響應(yīng)數(shù)據(jù)執(zhí)行規(guī)則匹配和用戶契約檢查;
其中規(guī)則匹配指交互所需的規(guī)則的統(tǒng)一和匹配。而用戶契約檢查指用戶在請(qǐng)求數(shù)據(jù)響應(yīng)時(shí)網(wǎng)絡(luò)對(duì)需遵循的網(wǎng)絡(luò)交互契約進(jìn)行檢查。
204、返回所述模擬響應(yīng)數(shù)據(jù)。
此外,還在運(yùn)作完成模擬應(yīng)用后,還可統(tǒng)計(jì)所述模擬應(yīng)用在多個(gè)時(shí)間段被調(diào)用的參數(shù)信息,所述參數(shù)信息包括調(diào)用次數(shù)、來(lái)源ip、響應(yīng)時(shí)長(zhǎng)以及請(qǐng)求地址四個(gè)字段中的一項(xiàng)或多項(xiàng)。其中,來(lái)源ip指由哪一個(gè)ip地址發(fā)起對(duì)模擬應(yīng)用的調(diào)用。還可根據(jù)所述參數(shù)信息中的一個(gè)或多個(gè)字段聚合所述參數(shù)信息。如,以字段來(lái)源ip對(duì)參數(shù)信息進(jìn)行聚合,可知從該ip地址發(fā)出的所有請(qǐng)求次數(shù)和平均響應(yīng)時(shí)間等信息。
實(shí)施例4
一種模擬系統(tǒng)m,如圖4所示,其利用如上所述的模擬應(yīng)用的運(yùn)作方法工作,包括:一第一解析模塊1、一配置模塊2、一地址生成模塊3、一應(yīng)用模塊4、一路由模塊5、一編碼適配模塊6、一規(guī)則匹配和檢查模塊7以及一數(shù)據(jù)返回模塊8;
所述第一解析模塊1用于解析一應(yīng)用的api的metadata地址;
所述配置模塊2用于配置所述應(yīng)用的模擬響應(yīng)數(shù)據(jù);
所述地址生成模塊3用于根據(jù)所述第一解析模塊解析的結(jié)果和所述模擬響應(yīng)數(shù)據(jù)生成一總線模擬地址和一應(yīng)用模擬地址;
所述應(yīng)用模塊4用于將所述總線模擬地址和所述應(yīng)用模擬地址應(yīng)用至所述應(yīng)用;
所述路由模塊5用于根據(jù)一應(yīng)用模擬請(qǐng)求執(zhí)行對(duì)所述應(yīng)用的路由或者以所述應(yīng)用模擬地址執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的路由。
所述編碼適配模塊6用于根據(jù)一用戶請(qǐng)求的請(qǐng)求頭的格式執(zhí)行對(duì)所述模擬響應(yīng)數(shù)據(jù)的編碼適配;
所述規(guī)則匹配和檢查模塊7用于對(duì)所述模擬響應(yīng)數(shù)據(jù)執(zhí)行規(guī)則匹配和用戶契約檢查;
所述數(shù)據(jù)返回模塊8用于返回所述模擬響應(yīng)數(shù)據(jù)。
其中,所述配置模塊2包括一輸入模塊21、一元數(shù)據(jù)生成模塊22、一第二解析模塊23、一映射關(guān)系建立模塊24和一存儲(chǔ)模塊25;
所述輸入模塊21用于輸入一模擬對(duì)象;
所述元數(shù)據(jù)生成模塊22用于生成所述模擬對(duì)象的元數(shù)據(jù);
所述第二解析模塊23用于解析所述元數(shù)據(jù);
所述映射關(guān)系建立模塊24用于建立所述元數(shù)據(jù)和與所述元數(shù)據(jù)對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù)的映射關(guān)系;
所述存儲(chǔ)模塊25用于存儲(chǔ)所述模擬響應(yīng)數(shù)據(jù)和所述映射關(guān)系。
以該應(yīng)用為一用戶應(yīng)用u為例,用戶應(yīng)用u內(nèi)設(shè)置的模擬服務(wù)代理將模擬系統(tǒng)m應(yīng)用至用戶應(yīng)用u中,用戶通可過(guò)瀏覽器以http(超文本傳輸協(xié)議)的方式訪問(wèn)用戶應(yīng)用u的metadata地址,該用戶應(yīng)用u直接以http或soap(簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議)的方式訪問(wèn)其內(nèi)設(shè)置的模擬系統(tǒng)。針對(duì)用戶對(duì)模擬系統(tǒng)發(fā)出的用戶請(qǐng)求,模擬系統(tǒng)對(duì)該用戶請(qǐng)求進(jìn)行解析,并根據(jù)映射關(guān)系查找與解析的該用戶請(qǐng)求對(duì)應(yīng)的模擬響應(yīng)數(shù)據(jù),并執(zhí)行編碼適配、規(guī)則匹配、用戶契約檢查等操作,最后將該模擬響應(yīng)數(shù)據(jù)通過(guò)tcp/ip的方式返回至用戶端。用戶端還可以http方式訪問(wèn)模擬系統(tǒng)以查看模擬系統(tǒng)被調(diào)用的統(tǒng)計(jì)數(shù)據(jù)。
本實(shí)施例針對(duì)軟件測(cè)試人員對(duì)依賴服務(wù)的數(shù)據(jù)定制化的要求,能夠快速在真實(shí)服務(wù)和模擬服務(wù)間進(jìn)行切換,提高了測(cè)試效率,減輕了自動(dòng)化的數(shù)據(jù)初始化的負(fù)擔(dān),同時(shí)為性能測(cè)試提供了依賴隔離,節(jié)省了許多對(duì)依賴服務(wù)的排查時(shí)間,實(shí)現(xiàn)了外部依賴服務(wù)的可靠控制。
雖然以上描述了本發(fā)明的具體實(shí)施方式,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些僅是舉例說(shuō)明,本發(fā)明的保護(hù)范圍是由所附權(quán)利要求書(shū)限定的。本領(lǐng)域的技術(shù)人員在不背離本發(fā)明的原理和實(shí)質(zhì)的前提下,可以對(duì)這些實(shí)施方式做出多種變更或修改,但這些變更和修改均落入本發(fā)明的保護(hù)范圍。