更新時(shí)間:2022-04-07 來(lái)源:黑馬程序員 瀏覽量:
支付流程里面就涉及到了第三方支付接口:
下單接口:商戶(hù)提交下單請(qǐng)求到第三方支付接口,第三方支付收單成功后返回下單成功結(jié)果給到商戶(hù)系統(tǒng)。(下單接口的最終處理結(jié)果分為下單成功和下單失敗,若未收到明確結(jié)果可調(diào)用單筆訂單查詢(xún)接口查詢(xún)結(jié)果。)
支付接口:調(diào)用該接口時(shí)指定支付參數(shù),完成買(mǎi)家賬戶(hù)向商戶(hù)賬戶(hù)的支付,采用頁(yè)面跳轉(zhuǎn)交互模式和后臺(tái)通知交互模式。(結(jié)果分為兩路返回:一路為前臺(tái)在 return_url 頁(yè)面跳轉(zhuǎn)顯示支付結(jié)果;一路為后臺(tái)在 notify_url 收到支付結(jié)果通知后進(jìn)行響應(yīng)。)
退款接口:調(diào)用第三方支付的支付請(qǐng)求接口返回付款成功后,在需要做退款處理時(shí)調(diào)用退款請(qǐng)求接口發(fā)起退款處理。(退款接口的最終處理結(jié)果分為退款成功和退款失敗,若未收到明確結(jié)果可調(diào)用退款查詢(xún)接口查詢(xún)結(jié)果。)
單筆訂單查詢(xún)接口:根據(jù)訂單號(hào)查詢(xún)單筆訂單信息和狀態(tài)。退款訂單查詢(xún)接口:調(diào)用第三方支付的退款接口返回后,在需要查詢(xún)退款請(qǐng)求狀態(tài)可調(diào)用退款訂單查詢(xún)接口查詢(xún)退款訂單的狀態(tài)和訂單信息。
測(cè)試過(guò)程中需要注意的主要測(cè)試點(diǎn)及異常場(chǎng)景:
首先要保證接口都能正常調(diào)用;
生成一筆訂單,支付完成后,同步或異步重復(fù)回調(diào),只有一次有效;
生成一筆訂單,復(fù)制訂單號(hào)和金額,再次生成一筆訂單,用 fiddler 設(shè)置斷點(diǎn),用第一筆已完成的訂單號(hào)和訂單金額去替換現(xiàn)有的訂單號(hào)和金額,無(wú)法完成支付;
生成一筆訂單,跳轉(zhuǎn)到第三方時(shí)修改金額,無(wú)法到賬,或者如果是游戲充值游戲幣的話(huà),到賬為篡改后的金額對(duì)應(yīng)的游戲幣;
異步通知屏蔽,同步有效,進(jìn)行支付,同步能夠正常到賬;
同步設(shè)置無(wú)效,異步有效,進(jìn)行支付,異步能夠正常到賬;
同步異步都設(shè)置無(wú)效,在第三方支付完成后,在重發(fā)機(jī)制時(shí)間范圍內(nèi),設(shè)置異步有效,到下次通知時(shí)間點(diǎn)時(shí),能夠正常通知到賬(補(bǔ)單機(jī)制的驗(yàn)證,如果商戶(hù)收到第三方支付成功的通知后,要告知第三方支付收到了成功的通知,如果第三方支付收到商戶(hù)應(yīng)答不是 ok 或超時(shí),第三方支付就會(huì)認(rèn)為通知失敗,會(huì)在規(guī)定的時(shí)間內(nèi)持續(xù)調(diào)用 notify_url,一般有時(shí)間或次數(shù)的限制);
針對(duì)支付訂單在數(shù)據(jù)庫(kù)中存儲(chǔ)是否完整和正確進(jìn)行校驗(yàn)(比如:第三方訂單號(hào)--方便與第三方對(duì)賬和問(wèn)題排查、訂單金額、訂單狀態(tài)等);
如果是用戶(hù)購(gòu)買(mǎi)實(shí)物商品,用戶(hù)發(fā)起退貨,要保證退貨流程正常,資金能正常返還,要考慮下并發(fā)情況驗(yàn)證以確保安全性;
如果是用戶(hù)購(gòu)買(mǎi)虛擬商品,比如話(huà)費(fèi)、油卡之類(lèi)的商品,只有在發(fā)貨失敗的時(shí)候才能發(fā)起退貨,注意驗(yàn)證;
從零開(kāi)始搭建自動(dòng)化測(cè)試環(huán)境【web自動(dòng)化測(cè)試教程】
決策表設(shè)計(jì)測(cè)試用例如何設(shè)計(jì)?