提問:做爲一個支付平臺,接入了快錢、易寶或直連銀行等多家的渠道,內在的產品流程是本身的。業內有什麼比較好的測試辦法,來測試各渠道及其支持的銀行通道呢?做爲產品,我本身辦了十幾張銀行卡方便測試,但QA和開發不肯意這樣作,怎麼辦呢?網絡
回答:對支付平臺而言,與支付渠道相關的測試大體能夠分爲:測試支付渠道功能、測試支付產品功能。socket
一、支付渠道功能測試post
主要是測試與銀行、銀聯、其餘外部支付渠道以及諸如實名認證等非支付類功能的功能。通常狀況下,支付渠道的接口只對第三方支付內部開放,不會直接將支付渠道暴露給外部商戶,對外部商戶都是包裝成支付產品形式提供的。支付渠道是第三方支付公司最基礎的能力,因爲涉及調用外部形形色色的各類接口及服務,各家的渠道提供的測試環境、準生產環境、生產環境要求也不一樣,同時第三方支付本身也須要維護對應的測試環境、準生產環境、生產環境不一樣版本的環境,要完整作測試確實挺麻煩。測試
測試方法:xml
在內部開發一套統一的測試網關(無論是接口通訊協議是socket、http、xml等,通常都統一爲http以方便測試),統一各類渠道的測試入口,針對不一樣的渠道維護對應的接口參數模板,方便測試人員快速輸入並提交原始的支付請求。 提交到支付渠道後,若是支付渠道維護有測試環境、準測試環境,則能夠直接用提供的測試帳號完成實際調用支付渠道測試。 若是不提供,只能像題主同樣,針對不一樣的渠道開通銀行卡、對公帳戶等進行測試。此種狀況下通常都以最低限額測試。測試卡的申請、測試費用出處、平常管理能夠根據每家公司實際狀況制定對應政策,最好是公司承擔各類費用、簡化相關流程並有對應的激勵措施,例如不要對此類費用還要走極爲漫長的報銷流程。blog
測試目的:保證支付渠道功能的正確性、完整性、可用性,驗證渠道是否暢通、功能是否正常。 一個典型例子是,原有支付渠道新上線一個功能,生產環境測試發現有問題,要在生產環境完整跑一邊流程極爲麻煩,能夠用測試或準生產環境穩定版本的測試網關測試,快速定位是上線新版本影響生成功能,仍是支付渠道端的問題,或者生產環境網絡等問題影響。接口
二、支付產品功能測試開發
這裏的支付產品能夠是第三方支付內部的基礎性產品,也能夠是對外部商戶提供的產品或接口。此種狀況下,測試重點不是支付渠道的基礎功能,而是支付產品的核心功能。對支付產品而言,能夠假設支付渠道是一個黑盒子,黑盒子對外提供的服務是可靠穩定的。部署
測試方法:產品
在內部開發一套支付渠道的模擬網關,對各類支付渠道的各個接口功能進行模擬並根據支付請求返回對應的模擬報文。支付請求不用實際提交給外部支付渠道。 通常模擬網關與上面的測試網關會統一開發部署。