Paypal 与贝宝的集成测试

Paypal 与贝宝的集成测试,paypal,Paypal,我想能够测试我们与贝宝的集成。我们已经建立了沙箱账户等,我甚至可以创建付款。但是,我也希望能够通过集成测试发布退款、查询退款以及所有其他API,而无需人工甚至浏览器参与。困难的部分似乎是,当然,PayPal流程需要有人与PayPal URL交互并批准购买 更多细节:我们在网站上使用标准的电子商务流程。用户出现,将产品放入购物车,继续购买流程,选择付款方式,在本例中为PayPal。当然,在PayPal的例子中,我们在PayPal中创建付款,然后简单地显示用户登录PayPal帐户并批准购买的Perp

我想能够测试我们与贝宝的集成。我们已经建立了沙箱账户等,我甚至可以创建付款。但是,我也希望能够通过集成测试发布退款、查询退款以及所有其他API,而无需人工甚至浏览器参与。困难的部分似乎是,当然,PayPal流程需要有人与PayPal URL交互并批准购买

更多细节:我们在网站上使用标准的电子商务流程。用户出现,将产品放入购物车,继续购买流程,选择付款方式,在本例中为PayPal。当然,在PayPal的例子中,我们在PayPal中创建付款,然后简单地显示用户登录PayPal帐户并批准购买的Perpal流的嵌入式弹出窗口。贝宝完成了所有这些工作。我们得到的回答只是“是的,购买已经批准”


所以。。在集成测试环境中,我们可以在PayPal中创建支付实体,但是。。在沙盒环境集成测试中,我们如何获得付款批准?沙箱环境中是否有一个开发者API,上面写着“嘿,这个PayPal用户批准了这笔付款”或“嘿,这个PayPal用户拒绝了这笔付款”,这样我们就可以在测试代码中模拟买家的流程。或者,是否有一种方法可以设置一个沙盒帐户,以便仅为测试环境“自动批准”购买或“自动拒绝”购买?

是的,您可以在沙盒中执行任何可以在实时服务器上执行的操作。这是一个非常广泛的问题,所以很难回答

例如,如果您希望在不需要任何浏览器流的情况下处理付款,则需要设置账单协议或Pro事务,以便可以运行参考事务。这将涉及Express Checkout API和/或Payments Pro API以及参考交易API。不过,根据您使用的是Classic还是REST,API调用会有所不同

在任何情况下,一旦PayPal沙箱系统中存在交易,您就可以使用API退款。不过,同样的事情……您要么使用RESTAPI,要么使用Classic


如果您能在问题中提供更多细节,我也可以将此答案更新为更具体。

更新了说明。我将研究这个计费协议设置,尽管我不希望集成测试偏离我们在生产中的工作方式。谢谢你的帮助。我还是不太明白你的担心。沙箱与live完全相同。所以,是的,API是一样的,除了端点将有sandbox.paypal.com而不仅仅是paypal.com,你将得到与你生活中相同的API响应。是的,我明白了。然而,集成测试。。。为了测试我们的代码对PayPal API等的响应,需要将付款从已创建状态转移到已批准状态。。。为了测试,例如,退款。例如,当我针对Stripe编写集成测试时,我会提供一个测试标记的伪造信用卡号码,该号码总是被批准的(或者总是被拒绝的)。似乎我根本无法针对PayPal编写这些类型的集成测试。您在沙箱中查看过PayPal负面测试吗?