網際網路金融P2P主業務場景自動化測試
阿新 • • 發佈:2019-02-02
網際網路金融P2P行業,近三年來發展迅速,如火如荼。
據不完全統計,全國有3000+的企業。
P2P主要的業務場景概括地說有6個,請看下圖:
我的想法是做成生產者-消費者模式,類似一個生態系統,將不會對測試環境造成不良影響。 假設發標僅受這些輸入引數的影響: Parameters:
那麼,剩下的就是還款和提現了。 還款通常要做成作業服務,當然測試環境還是得實現,不可能某個專案的期限是30天,要等到30天后才還款,所以還款的引數需要可控到還款日期(業務發生日期)和操作時間。 提現就更簡單了。
我的想法是做成生產者-消費者模式,類似一個生態系統,將不會對測試環境造成不良影響。 假設發標僅受這些輸入引數的影響: Parameters:
專案型別 [XX寶, XX貸, projectC, projectD] 期限單位 [天, 月] 還款方式 [到期還本付息, 按月付息到期還本, 月N日還息到期還本, 等額本息, 還款方式5] 道具 [coupon1, coupon2, coupon3, coupon4, coupon5]下面我們先設計一下發標自動化測試用例吧: 如果考慮以上四個引數的各種組合影響,使用窮舉法。將會有4*2*5*5=200。呵呵,如果是手工做功能測試的話,單是發200個標也要耗費不少的時間。 當然我們是理性的人,不是人傻時間多。我們可以使用ACTS工具,該工具很牛叉,使用的是IPOG演算法。通過該工具我們可以得到最優的25個用例,如下:
為了更好的一一對應,我們就製造出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個投資使用者與25個專案對號入座,意思就是使用者甲子使用道具投資XX貸的這個專案,過程中我們將檢驗各種流水,得出一個這樣的測試結果:
客戶 道具 甲子 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
這樣的話,每一次釋出,我們都可以做到覆蓋這幾個流程了
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天后才還款,所以還款的引數需要可控到還款日期(業務發生日期)和操作時間。 提現就更簡單了。