1. 程式人生 > >網際網路金融P2P主業務場景自動化測試

網際網路金融P2P主業務場景自動化測試

        網際網路金融P2P行業,近三年來發展迅速,如火如荼。         據不完全統計,全國有3000+的企業。         P2P主要的業務場景概括地說有6個,請看下圖:
        我的想法是做成生產者-消費者模式,類似一個生態系統,將不會對測試環境造成不良影響。         假設發標僅受這些輸入引數的影響: Parameters:
專案型別 [XX寶, XX貸, projectC, projectD] 期限單位 [天, 月] 還款方式 [到期還本付息, 按月付息到期還本, 月N日還息到期還本, 等額本息, 還款方式5] 道具 [coupon1, coupon2, coupon3, coupon4, coupon5]
          下面我們先設計一下發標自動化測試用例吧:           如果考慮以上四個引數的各種組合影響,使用窮舉法。將會有4*2*5*5=200。呵呵,如果是手工做功能測試的話,單是發200個標也要耗費不少的時間。           當然我們是理性的人,不是人傻時間多。我們可以使用ACTS工具,該工具很牛叉,使用的是IPOG演算法。通過該工具我們可以得到最優的25個用例,如下:
Relations:
Test Case# 專案型別 期限單位 還款方式 道具
0 XX貸 到期還本付息 coupon1
1 projectC 到期還本付息 coupon2
2 projectD 到期還本付息 coupon3
3 XX寶 到期還本付息 coupon4
4 XX貸 到期還本付息 coupon5
5 projectC 按月付息到期還本 coupon1
6 projectD 按月付息到期還本 coupon2
7 XX寶 按月付息到期還本 coupon3
8 XX貸 按月付息到期還本 coupon4
9 projectC 按月付息到期還本 coupon5
10 projectD 月N日還息到期還本 coupon1
11 XX寶 月N日還息到期還本 coupon2
12 XX貸 月N日還息到期還本 coupon3
13 projectC 月N日還息到期還本 coupon4
14 projectD 月N日還息到期還本 coupon5
15 XX寶 等額本息 coupon1
16 XX貸 等額本息 coupon2
17 projectC 等額本息 coupon3
18 projectD 等額本息 coupon4
19 XX寶 等額本息 coupon5
20 XX貸 還款方式5 coupon1
21 projectC 還款方式5 coupon2
22 projectD 還款方式5 coupon3
23 XX寶 還款方式5 coupon4
24 XX寶 還款方式5 coupon5


我們通過多種方式釋出這25個專案,如果是在ui上,建議使用selenium,將這25個專案資訊錄入到csv。測試指令碼讀取csv,可以每日不停的發專案,釋出後記錄下專案id。 現在生產者有了,是時候考慮消費者了。如果生產者生產出來的是專案,那麼消費者就是我們的投資客戶。
          為了更好的一一對應,我們就製造出25個投資客戶。步驟是:           註冊->繫結郵箱->實名認證->充值-》發放道具           準備資料的過程也很簡單。
客戶 道具
甲子 coupon1
乙丑 coupon2
丙寅 coupon3
丁卯 coupon4
戊辰 coupon5
己巳 coupon1
庚午 coupon2
辛未 coupon3
壬申 coupon4
癸酉 coupon5
甲戌 coupon1
乙亥 coupon2
丙子 coupon3
丁丑 coupon4
戊寅 coupon5
己卯 coupon1
庚辰 coupon2
辛巳 coupon3
壬午 coupon4
癸未 coupon5
甲申 coupon1
乙酉 coupon2
丙戌 coupon3
丁亥 coupon4
戊子 coupon5
          最後,這25個投資使用者與25個專案對號入座,意思就是使用者甲子使用道具投資XX貸的這個專案,過程中我們將檢驗各種流水,得出一個這樣的測試結果:
TestResult Case# 專案型別 期限單位 還款方式 道具 客戶 測試結果
0 XX貸 到期還本付息 coupon1 甲子
1 projectC 到期還本付息 coupon2 乙丑
2 projectD 到期還本付息 coupon3 丙寅
3 XX寶 到期還本付息 coupon4 丁卯
4 XX貸 到期還本付息 coupon5 戊辰
5 projectC 按月付息到期還本 coupon1 己巳
6 projectD 按月付息到期還本 coupon2 庚午
7 XX寶 按月付息到期還本 coupon3 辛未
8 XX貸 按月付息到期還本 coupon4 壬申
9 projectC 按月付息到期還本 coupon5 癸酉
10 projectD 月N日還息到期還本 coupon1 甲戌
11 XX寶 月N日還息到期還本 coupon2 乙亥
12 XX貸 月N日還息到期還本 coupon3 丙子
13 projectC 月N日還息到期還本 coupon4 丁丑
14 projectD 月N日還息到期還本 coupon5 戊寅
15 XX寶 等額本息 coupon1 己卯
16 XX貸 等額本息 coupon2 庚辰
17 projectC 等額本息 coupon3 辛巳
18 projectD 等額本息 coupon4 壬午
19 XX寶 等額本息 coupon5 癸未
20 XX貸 還款方式5 coupon1 甲申
21 projectC 還款方式5 coupon2 乙酉
22 projectD 還款方式5 coupon3 丙戌
23 XX寶 還款方式5 coupon4 丁亥
24 XX寶 還款方式5 coupon5 戊子
          這樣的話,每一次釋出,我們都可以做到覆蓋這幾個流程了
           那麼,剩下的就是還款和提現了。            還款通常要做成作業服務,當然測試環境還是得實現,不可能某個專案的期限是30天,要等到30天后才還款,所以還款的引數需要可控到還款日期(業務發生日期)和操作時間。            提現就更簡單了。