本發(fā)明涉及電子技術(shù)領(lǐng)域,尤其涉及一種測(cè)試裝置及方法。
背景技術(shù):
計(jì)算機(jī)軟件系統(tǒng)都要求提供管理員的操作日志和系統(tǒng)的運(yùn)行日志,以滿足審計(jì)的要求。為了滿足審計(jì)的要求,就要求日志記錄準(zhǔn)確和完整。為了驗(yàn)證軟件的日志功能是否正確,就需要對(duì)日志功能進(jìn)行測(cè)試。日志的記錄,包括管理員操作日志和系統(tǒng)運(yùn)行日志,涉及的內(nèi)容非常的多,要進(jìn)行系統(tǒng)完整的測(cè)試,工作量非常的大。
業(yè)界有軟件自動(dòng)化測(cè)試工具,如基于數(shù)據(jù)驅(qū)動(dòng)的一種自動(dòng)化測(cè)試工具,測(cè)試的輸入是從數(shù)據(jù)文件中讀取(數(shù)據(jù)池、Excel文件、XML、ini文件等),并通過代碼腳本等手段載入到變量中,執(zhí)行測(cè)試腳本,根據(jù)系統(tǒng)返回值,判斷是否執(zhí)行成功,并生成測(cè)試報(bào)告。業(yè)界現(xiàn)有的軟件自動(dòng)化測(cè)試工具,一般是針對(duì)業(yè)務(wù)功能或Web輸入頁面的,目前沒有針對(duì)日志的自動(dòng)化測(cè)試工具。
CSA(Cloud Security Alliance,云安全聯(lián)盟)云計(jì)算安全標(biāo)準(zhǔn)對(duì)日志的要求,如:
一、云計(jì)算平臺(tái)應(yīng)支持如下審計(jì)記錄信息的產(chǎn)生能力:
1.云計(jì)算平臺(tái)管理員和租戶使用的身份鑒別機(jī)制,以及云計(jì)算平臺(tái)管理員和租戶每次登錄和身份鑒別的信息;
2.云計(jì)算平臺(tái)管理員對(duì)云基礎(chǔ)設(shè)施和虛擬資源的管理操作,包括但不限于架構(gòu)調(diào)整、策略變更、安全功能的開啟關(guān)閉、虛擬資源申請(qǐng)、虛擬機(jī)間遷移、虛擬資源調(diào)度、虛擬資源分配、虛擬資源的異常使用和重要系統(tǒng)命令的使用等。
3.云計(jì)算平臺(tái)管理員對(duì)租戶資源的操作。如租戶虛擬化實(shí)例的建立、變更、回收,對(duì)虛擬存儲(chǔ)設(shè)備進(jìn)行變更(掛卷、卸卷)。
4.租戶通過云計(jì)算平臺(tái)對(duì)租戶資源的操作;
5.其他與云計(jì)算平臺(tái)安全有關(guān)的事件或?qū)iT定義的可審計(jì)事件。
二、云計(jì)算平臺(tái)的審計(jì)記錄應(yīng)支持記錄包括安全事件的主體、客體、時(shí)間、類型和結(jié)果等內(nèi)容的能力。
三、云計(jì)算平臺(tái)的審計(jì)記錄產(chǎn)生的時(shí)間應(yīng)支持由云計(jì)算平臺(tái)內(nèi)唯一確定的時(shí)鐘產(chǎn)生的能力。
四、云計(jì)算平臺(tái)應(yīng)支持系統(tǒng)管理員對(duì)審計(jì)記錄進(jìn)行查詢、分類和分析的功能,并支持生成相關(guān)審計(jì)報(bào)表的能力。
五、云計(jì)算平臺(tái)應(yīng)支持租戶間審計(jì)記錄信息的相互隔離能力。
六、云計(jì)算平臺(tái)應(yīng)支持租戶收集和查看與本租戶資源相關(guān)的審計(jì)記錄信息能力。
七、云計(jì)算平臺(tái)應(yīng)支持審計(jì)信息保護(hù),禁止非授權(quán)的用戶或?qū)嶓w獲取審計(jì)信息,避免受到未預(yù)期的刪除、修改或覆蓋和丟失能力。
八、云計(jì)算平臺(tái)應(yīng)支持審計(jì)信息的保存期限符合法律法規(guī)及客戶的信息留存要求能力。
九、云計(jì)算平臺(tái)應(yīng)支持實(shí)時(shí)監(jiān)控收集到的各類安全事件的日志,并支持設(shè)置一系列規(guī)則監(jiān)控審計(jì)事件,并根據(jù)這些規(guī)則判斷安全侵害的能力,當(dāng)檢測(cè)到有安全侵害事件時(shí),應(yīng)支持自動(dòng)進(jìn)行審計(jì)響應(yīng)能力。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種測(cè)試裝置及方法,主要解決日志測(cè)試的問題。
本發(fā)明提供的測(cè)試裝置,包括:
第一獲取模塊,用于獲取外部操作數(shù)據(jù);
記錄模塊,用于記錄所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系;
第一發(fā)送模塊,用于將所述外部操作數(shù)據(jù)發(fā)送給被測(cè)試平臺(tái);
第二獲取模塊,用于獲取所述被測(cè)試平臺(tái)根據(jù)所述外部操作數(shù)據(jù)進(jìn)行運(yùn)行后的日志信息;
判斷模塊,用于根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則;
生成模塊,用于根據(jù)所述判斷模塊的判斷結(jié)果生成測(cè)試報(bào)告。
在一些實(shí)施例中,所述外部操作數(shù)據(jù)包括:管理員操作數(shù)據(jù)、使用用戶操作數(shù)據(jù)中的至少一種。
在一些實(shí)施例中,所述日志信息包括:操作日志、系統(tǒng)日志中的至少一種。
在一些實(shí)施例中,上述測(cè)試裝置還包括:第三獲取模塊,用于所述判斷模塊根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則之前,獲取所述被測(cè)試平臺(tái)的日志生成規(guī)則。
在一些實(shí)施例中,上述測(cè)試裝置還包括:第二發(fā)送模塊,用于將所述測(cè)試報(bào)告發(fā)送出去。
本發(fā)明提供的一種測(cè)試方法,包括:
獲取外部操作數(shù)據(jù);
將所述外部操作數(shù)據(jù)發(fā)送給被測(cè)試平臺(tái),并記錄所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系;
獲取所述被測(cè)試平臺(tái)根據(jù)所述外部操作數(shù)據(jù)進(jìn)行運(yùn)行后的日志信息;
根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則,并根據(jù)判斷結(jié)果生成測(cè)試報(bào)告。
在一些實(shí)施例中,根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則之前,還包括:獲取所述被測(cè)試平臺(tái)的日志生成規(guī)則。
本發(fā)明提供的測(cè)試裝置及方法,獲取外部操作數(shù)據(jù);將所述外部操作數(shù)據(jù)發(fā)送給被測(cè)試平臺(tái),并記錄所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系;獲取所述被測(cè)試平臺(tái)根據(jù)所述外部操作數(shù)據(jù)進(jìn)行運(yùn)行后的日志信息;根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則,并根據(jù)判斷結(jié)果生成測(cè)試報(bào)告。實(shí)現(xiàn)了對(duì)被測(cè)試平臺(tái)的日志的自動(dòng)化測(cè)試,且方案簡(jiǎn)單,成本低,效率高。
附圖說明
圖1為本發(fā)明第一實(shí)施例提供的測(cè)試方法的流程圖;
圖2為本發(fā)明第二實(shí)施例提供的測(cè)試裝置的示意圖。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
下面通過具體實(shí)施例對(duì)本發(fā)明進(jìn)一步詳細(xì)說明。
第一實(shí)施例
參考圖1,圖1為本發(fā)明第一實(shí)施例提供的測(cè)試方法的流程圖,該測(cè)試方法主要包括:
S101、獲取外部操作數(shù)據(jù);
S102、將所述外部操作數(shù)據(jù)發(fā)送給被測(cè)試平臺(tái),并記錄所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系;
S103、獲取所述被測(cè)試平臺(tái)根據(jù)所述外部操作數(shù)據(jù)進(jìn)行運(yùn)行后的日志信息;
S104、根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則,并根據(jù)判斷結(jié)果生成測(cè)試報(bào)告。
本實(shí)施例中,步驟S101獲取的外部操作數(shù)據(jù)包括:管理員操作數(shù)據(jù)、使用用戶操作數(shù)據(jù)中的至少一種。外部操作數(shù)據(jù)是替代管理員、使用用戶在被測(cè)試平臺(tái)輸入的數(shù)據(jù),如用戶賬號(hào)、口令、具體的操作指令,以及指令中需要輸入的參數(shù)等。這部分?jǐn)?shù)據(jù)可以人工直接輸入,也可以從數(shù)據(jù)庫或文件中導(dǎo)入,該文件可以是Excel文件、XML文件、ini文件等。
該外部操作數(shù)據(jù)可以直接或轉(zhuǎn)換成操作指令后發(fā)送給被測(cè)試平臺(tái),相當(dāng)于管理員、使用用戶在日常地操作被測(cè)試平臺(tái),被測(cè)試平臺(tái)根據(jù)該外部操作數(shù)據(jù)進(jìn)行運(yùn)行后會(huì)產(chǎn)生日志信息,包括操作日志、系統(tǒng)日志中的至少一種;步驟S103從該被測(cè)試平臺(tái)獲取該日志信息。步驟S102記錄的操作時(shí)間也是被測(cè)試平臺(tái)收到該外部操作數(shù)據(jù)的時(shí)間,相當(dāng)于管理員、使用用戶操作被測(cè)試平臺(tái)的時(shí)間。
步驟S104之前,可以先獲取被測(cè)試平臺(tái)的日志生成規(guī)則,被測(cè)試平臺(tái)的日志生成規(guī)則是定義被測(cè)試平臺(tái)的日志生成規(guī)則的,被測(cè)試平臺(tái)的日志有至少有兩類:
一類是操作日志,如用戶登錄或管理員執(zhí)行管理命令生成的日志。這類日志的生成規(guī)則,至少包括:定義操作指令生成日志的內(nèi)容,如:
a)用戶登錄操作,日志中應(yīng)該記錄登錄的時(shí)間、用戶名、匿名的登錄口令(如以XXX或亂碼顯示)、登錄結(jié)果;
b)管理員操作,日志中應(yīng)該記錄操作的時(shí)間、管理員賬號(hào)、操作的指令關(guān)鍵內(nèi)容、操作的結(jié)果等。
另一類是系統(tǒng)日志,這類日志,是平臺(tái)系統(tǒng)在運(yùn)行過程中產(chǎn)生的,可能是系統(tǒng)自動(dòng)產(chǎn)生的,也可能是由用戶或管理員操作引起的。這類日志的生成規(guī)則,除了要定義系統(tǒng)生成日志的內(nèi)容,還要定義系統(tǒng)生成日志的條件。如:
c)用戶登錄后30分鐘內(nèi)沒有操作,系統(tǒng)就要關(guān)閉用戶的登錄狀態(tài),在關(guān)閉時(shí),日志中應(yīng)該記錄時(shí)間、用戶賬號(hào)、動(dòng)作內(nèi)容、原因等關(guān)鍵信息。
d)平臺(tái)運(yùn)行過程中某些監(jiān)控日志達(dá)到閾值時(shí)記錄日志,如某個(gè)進(jìn)程CPU占用率超過85%,要記錄進(jìn)程的名稱、CPU達(dá)到閾值的時(shí)間、CPU占用率等關(guān)鍵信息。
獲取到被測(cè)試平臺(tái)的日志生成規(guī)則之后,步驟S104中,根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則,并根據(jù)判斷結(jié)果生成測(cè)試報(bào)告。
其判斷方法基本為:判斷被測(cè)試平臺(tái)根據(jù)該外部操作數(shù)據(jù)在該操作時(shí)間進(jìn)行運(yùn)行后生成的日志信息,是否符合被測(cè)試平臺(tái)的日志生成規(guī)則。例如:
在一個(gè)實(shí)施例中,某一用戶以用戶名user1_name在2016年1月1日10時(shí)10分10秒登錄被測(cè)試系統(tǒng),根據(jù)被測(cè)試平臺(tái)的日志生成規(guī)則,在被測(cè)試平臺(tái)的日志信息中,就應(yīng)該有一條用戶user1_name在2016年1月1日10時(shí)10分10秒登錄的日志信息,日志信息中包含登錄的時(shí)間、用戶名、匿名的登錄口令(如以XXX或亂碼顯示)、登錄結(jié)果;考慮到平臺(tái)響應(yīng)的時(shí)間,可以設(shè)置一個(gè)合理的滯后期,如2016年1月1日10時(shí)10分10秒至2016年1月1日10時(shí)10分13秒之內(nèi)都屬于合理范圍。如果在被測(cè)試平臺(tái)的日志信息中記錄的信息與日志生成規(guī)則一致,則在測(cè)試報(bào)告中記錄這條操作日志正確,如果沒有或與日志生成規(guī)則不完全一致,則在測(cè)試報(bào)告中記錄這條操作日志不正確,并記錄不正確的具體內(nèi)容。
在另一個(gè)實(shí)施例中,某一用戶登錄以用戶名user1_name在2016年1月1日10時(shí)10分10秒登錄被測(cè)試系統(tǒng),并且35分鐘之內(nèi)沒有操作。根據(jù)被測(cè)試平臺(tái)的日志生成規(guī)則,平臺(tái)在30分鐘后自動(dòng)關(guān)閉用戶的登錄狀態(tài),在被測(cè)試平臺(tái)的日志信息中,就應(yīng)該有一條用戶user1_name在2016年1月1日10時(shí)40分10秒用戶登錄狀態(tài)關(guān)閉的日志信息,日志信息中包含關(guān)閉登錄的時(shí)間、用戶名、關(guān)閉的原因(超時(shí)關(guān)閉)。如果在被測(cè)試平臺(tái)的日志信息中記錄的信息與日志生成規(guī)則一致,則在測(cè)試報(bào)告中記錄這條操作日志正確,如果沒有或與日志生成規(guī)則不完全一致,則在測(cè)試報(bào)告中記錄這條操作日志不正確,并記錄不正確的具體內(nèi)容。
生成測(cè)試報(bào)告之后,可進(jìn)行Web呈現(xiàn)或供下載,或發(fā)送出去。
第二實(shí)施例
參考圖2,圖2為本發(fā)明第二實(shí)施例提供的測(cè)試裝置的示意圖,該測(cè)試裝置主要包括:
第一獲取模塊21,用于獲取外部操作數(shù)據(jù);
記錄模塊22,用于記錄所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系;
第一發(fā)送模塊23,用于將所述外部操作數(shù)據(jù)發(fā)送給被測(cè)試平臺(tái);
第二獲取模塊24,用于獲取所述被測(cè)試平臺(tái)根據(jù)所述外部操作數(shù)據(jù)進(jìn)行運(yùn)行后的日志信息;
判斷模塊25,用于根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則;
生成模塊26,用于根據(jù)所述判斷模塊的判斷結(jié)果生成測(cè)試報(bào)告。
第一獲取模塊21獲取的外部操作數(shù)據(jù)包括:管理員操作數(shù)據(jù)、使用用戶操作數(shù)據(jù)中的至少一種。外部操作數(shù)據(jù)是替代管理員、使用用戶在被測(cè)試平臺(tái)輸入的數(shù)據(jù),如用戶賬號(hào)、口令、具體的操作指令,以及指令中需要輸入的參數(shù)等。這部分?jǐn)?shù)據(jù)可以人工直接輸入,也可以從數(shù)據(jù)庫或文件中導(dǎo)入,該文件可以是Excel文件、XML文件、ini文件等,對(duì)應(yīng)的,第一獲取模塊21可以是人機(jī)交互界面,可以提供信息錄入框供人工直接輸入,也可以提供文件導(dǎo)入框供導(dǎo)入文件。
第一發(fā)送模塊23可以將該外部操作數(shù)據(jù)直接或轉(zhuǎn)換成操作指令后發(fā)送給被測(cè)試平臺(tái),相當(dāng)于管理員、使用用戶在日常地操作被測(cè)試平臺(tái),被測(cè)試平臺(tái)根據(jù)該外部操作數(shù)據(jù)進(jìn)行運(yùn)行后會(huì)產(chǎn)生日志信息,包括操作日志、系統(tǒng)日志中的至少一種;第二獲取模塊24從該被測(cè)試平臺(tái)獲取該日志信息。
由于外部操作數(shù)據(jù)發(fā)送給被測(cè)試平臺(tái)相當(dāng)于管理員、使用用戶在日常地操作被測(cè)試平臺(tái),因此,記錄模塊22需要記錄這一操作時(shí)間,記錄外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系;該操作時(shí)間也是被測(cè)試平臺(tái)收到該外部操作數(shù)據(jù)的時(shí)間。
在一些實(shí)施例中,上述測(cè)試裝置還可以包括:第三獲取模塊27,用于判斷模塊25根據(jù)所述日志信息,和記錄的所述外部操作數(shù)據(jù)、操作時(shí)間以及兩者的對(duì)應(yīng)關(guān)系,判斷所述日志信息是否符合獲取到的所述被測(cè)試平臺(tái)的日志生成規(guī)則之前,獲取所述被測(cè)試平臺(tái)的日志生成規(guī)則。被測(cè)試平臺(tái)的日志有至少有兩類:操作日志、系統(tǒng)日志,不同的日志類型,可定義不同的日志生成規(guī)則,可參考第一實(shí)施例。
生成模塊26主要用于根據(jù)判斷模塊25的判斷結(jié)果生成測(cè)試報(bào)告。可參考第一實(shí)施例。
在一些實(shí)施例中,上述測(cè)試裝置還可以包括:第二發(fā)送模塊28,用于將生成模塊26生成的測(cè)試報(bào)告發(fā)送出去。第二發(fā)送模塊28可以是NFC、藍(lán)牙、WiFi等模塊。
本發(fā)明提供的測(cè)試裝置和方法,實(shí)現(xiàn)了對(duì)被測(cè)試平臺(tái)的日志的自動(dòng)化測(cè)試,且方案簡(jiǎn)單,成本低,效率高。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
上面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行了描述,但是本發(fā)明并不局限于上述的具體實(shí)施方式,上述的具體實(shí)施方式僅僅是示意性的,而不是限制性的,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨和權(quán)利要求所保護(hù)的范圍情況下,還可做出很多形式,這些均屬于本發(fā)明的保護(hù)之內(nèi)。