如何解决如何编写集成测试以测试节点应用程序中的Stripe集成
您将如何编写集成测试以测试我的节点应用程序中的Stripe集成?
现在,我有一个非常简单的节点应用程序,该应用程序使用Stripe接受信用卡/借记卡付款。
我正在使用以下Stripe库https://github.com/stripe/stripe-node
例如
const charge = await stripe.charges.create({
amount: 2000,currency: GBP,source: id,});
if (!charge) throw new Error("charge unsuccessful");
res.status(200).json({
message: "charge posted successfully",charge,});
我可以手动测试功能。
如何使用集成和单元测试来测试此功能?
解决方法
您可以采取两种方法。首先是使用测试API密钥针对您的Stripe帐户的测试模式数据测试调用:
https://dashboard.stripe.com/test/apikeys
条带上有许多可用于测试模式测试的卡号,这些卡号均在此处定义:
https://stripe.com/docs/testing
请注意,您可以使用测试键安全地对API进行任何调用,并且该行为(几乎在所有方面)都将模仿实时模式下的情况,除非不收取任何实际费用:
https://stripe.com/docs/keys#test-live-modes
除了使用测试API密钥或完全{@ 3}模拟条带节点依赖之外,另一种方法是使用Stripe的官方模拟服务器:
这个想法是,您的ci / test环境将运行模拟服务器,而不是用测试键访问真正的Stripe API,而是改为模拟服务器:
const stripe = new Stripe("sk_test_xyz",{
host: "localhost",protocol: "http",port: 12111,});
如果您像上面那样初始化stripe-node
,您的呼叫将直接打到http://localhost:12111
,而不是https://api.stripe.com
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。