實際ATM監控系統的報表測試,可以以本文介紹的六點為綱展開,但是又不可拘泥于這六點,而應根據實際項目的情況,調整相應的測試策略和測試方法,以便對系統進行更有效的測試。
ATM監控系統集SNA通信技術、TCP/IP通信技術、數據庫技術、數據庫遠程同步技術、語音卡技術、報表技術等多種技術于一體,實現了基于銀行分布式網絡環境下的ATM集中管理。銀行需要通過ATM監控系統將總行數據分發到各地市行的數據庫,各地市行通過報表及時掌握本地區ATM機的整體狀態信息、局部狀態信息和交易信息。同時,銀行高級管理人員通過系統靈活的報表來進行科學的決策分析。所以,從用戶的使用頻度來說,除了交易監控之外,接下來就是報表的使用了。由此可見,報表是很重要的一項功能。相對應的,報表內容的測試在整個ATM監控系統中也就顯得很重要了。
雖然所有報表測試的總體目標都是相同的,即要求生成的報表的統計結果是正確的。但是因為銀行業務的獨特性,所以ATM監控系統的報表測試與一般信息管理系統的報表測試,在以下三方面有所不同。
● 信息類型不同
ATM監控系統要處理的信息有兩類:一類是管理信息,主要用于將ATM的狀態告知前置服務器,如OEX信息、RWT、RDT、RTT等交易;另一類是客戶交易信息。而一般信息管理系統要處理的信息則主要是交易信息。
● 報表統計的原始數據不同
對于ATM監控系統,每天日切時,系統將根據歷史(包括當日)的交易以及狀態信息進行分析統計,產生新的分析統計記錄。 ATM監控系統的報表統計功能使用的原始數據就是這些每日產生的新的分析統計記錄(筆者在這里稱為:報表中間數據)。而一般信息管理系統的原始數據,則是通過系統執行交易或操作產生的報表統計的原始數據。
● 測試方法不同
因為報表統計的原始數據不同,所以兩類系統的報表在測試方法上也有一定的區別。對于一般的信息管理系統,可以通過在相應功能界面進行數據的增、刪、改操作,然后在報表界面執行生成報表操作,就可以驗證報表數據的正確性。但是ATM監控系統無法簡單通過前臺界面的操作來驗證報表數據的正確性。
本文是筆者在某省行ATM監控系統中,對超過三十個報表進行測試的經驗總結。在本項目的報表測試過程中,筆者主要通過以下六個方面進行測試:功能測試、界面測試、數據正確性測試、單設備和多設備測試、權限和訪問安全性測試、報表性能情況驗證。
功能測試
功能測試主要是對報表的基本功能進行測試,如正常生成報表功能、二次查詢、報表導出等正常功能外,還對報表統計日期合法性控制、沒有數據情況下進行生成報表等異??刂频臏y試。報表功能測試的主要目標是:驗證報表基本功能的正確性,為后續的數據正確性測試奠定基礎。
報表的功能測試是整個報表測試的基礎內容。同時,通過這部分測試,測試人員可以逐步了解報表模塊的需求,提高業務的熟悉程度。因為這部分內容的測試方法和其他功能的測試沒有太大區別,所以這里不再詳細介紹。
界面測試
報表的界面測試,也可以算是功能測試的一部分,但是由于更側重于界面內容的正確顯示驗證,所以筆者將它剝離出來作為單獨的一項測試內容。
界面測試的主要目的是驗證界面顯示的內容是否正確,是否符合軟件開發規范。避免出現如表格布局不合規范、打印的硬拷貝少了表格線、界面有多余字符之類的情況。在報表測試中,界面測試的主要內容包括:報表表頭信息、報表整體界面、報表導出文件的界面顯示、打印預覽時的界面顯示、打印出的硬拷貝內容的界面顯示等。
數據正確性測試
報表功能的基本要求,就是通過統計分析操作,提供給用戶所需的準確數據。如果無法實現這個基本要求,則報表會完全失去意義。所以,報表測試很重要的一個內容就是對報表數據進行正確性的測試,而這部分工作也最復雜。在本文提到的某省行ATM監控系統的報表測試中,筆者主要從以下五個方面進行報表數據正確性的測試。
1.多個報表相互對照
在交易類報表中,有一些報表取的原始數據是相同的,我們可以在假設這些報表取的數據庫表的數據是正確的前提下,通過對比這些報表相同列的數據,進行報表結果是否取正確數據的驗證。如:交易情況明細表、金融交易統計表、它行卡、發卡機構交易分析、盈利情況表,雖然這幾張報表表單不一樣,但是本行卡、它行卡的交易筆數、金額卻應該是相同的。在測試時,我們通過對比這幾張報表同一字段的數據,發現“金融交易統計報表”中,“改密” 和“繳費”這兩列取了錯誤的數據。
原文轉自:http://www.uml.org.cn/Test/200801312.asp