在一個分佈式銀行系統中,如何測試一臺ATM機數據庫
解答安全
一、肯定Who/What/When/Where/Why/How分佈式
二、肯定測試工具,肯定是否能夠查看源碼工具
三、將問題分解:測試
四、確保涵蓋全部錯誤狀況(餘額不足、新開帳戶、不存在的帳戶等)事件
五、安全性和可靠性。同步
1、基本事件流:源碼
1登錄
、用戶向密碼
ATM
提款機中插入銀行卡,若是銀行卡是合法的,
ATM
提款機界面提示用戶輸入
提款密碼;
2
、用戶輸入該銀行卡的密碼,
ATM
提款機與
MainFrame
傳遞密碼,檢驗密碼的正確性。如
果輸入密碼正確,提示用戶輸入取錢金額,提示信息爲,「請輸入您的提款額度」;
3
、用戶輸入取錢金額,系統校驗金額正確,提示用戶確認,提示信息爲「您輸入的金額是
xxx
,請確認,謝謝!」,用戶按下確認鍵,確認須要提取的金額;
4
、系統同步銀行主機,點鈔票,
輸出給用戶,
而且減掉數據庫中該用戶賬戶中的存款金額。
5
、用戶提款,銀行卡自動退出,用戶取走現金,拔出銀行卡,
ATM
提款機界面恢復到初始
狀態;
2、備選事件流
(
考慮可能失敗的地方
)
:
1.
在基本事件流
1
中:
若是插入無效的銀行卡,那麼,在
ATM
提款機界面上提示用戶「您使用的銀行卡無效!」,
3
秒鐘後,自動退出該銀行卡。
2.
在基本事件流
2
中:
若是用戶輸入的密碼錯誤,則提示用戶「您輸入的密碼無效,請從新輸入」;
若是用戶連續
3
次輸入錯誤密碼,
ATM
提款機吞卡,而且
ATM
提款機的界面恢復到初始
狀態。此時,其餘提款人能夠繼續使用其餘的合法的銀行卡在
ATM
提款機上提取現金。
用戶輸入錯誤的密碼後,也能夠按「退出」鍵,則銀行卡自動退出。
3.
在基本事件流
3
中:
若是用戶輸入的單筆提款金額超過單筆提款上限,
ATM
提款機界面提示「您輸入的金額
錯誤,單筆提款上限金額是
2500RMB
,請從新輸入」;
若是用戶輸入的單筆金額,
不是以
50RMB
爲單位的,
那麼提示用戶「您輸入的提款金額
錯誤,請輸入以
50
爲單位的金額」;
若是用戶輸入正確的提款金額,
ATM
提款機提示用戶確認後,用戶取消提款,則
ATM
提
款機自動退出該銀行卡;
若是
ATM
提款機中餘額不足,則提示用戶,「抱歉,
ATM
提款機中餘額不足」,
3
秒鐘
後,自動退出銀行卡。
4.
在基本事件流
4
中:
若是用戶銀行戶頭中的存款小於提款金額,則提示用戶「抱歉,您的存款餘額不足!」,
3
秒鐘後,自動退出銀行卡;
5.
在基本事件流
5
中:
若是用戶沒有取走現金,或者沒有拔出銀行卡,
ATM
提款機不作任何提示,直接恢復到界面
的初始狀態;
3、基本路徑:
插入銀行卡
---
提示輸入密碼
---
用戶輸入密碼
---
提示輸入金額
---
用戶輸入金額
---
提示確
認
---
用戶確認
---
輸出鈔票給用戶,
退卡
---
用戶取走現金,
取走銀行卡
---
界面恢復初始狀
態