Javascript 如何编写集成测试来测试节点应用程序中的条带集成

Javascript 如何编写集成测试来测试节点应用程序中的条带集成,javascript,node.js,unit-testing,stripe-payments,integration-testing,Javascript,Node.js,Unit Testing,Stripe Payments,Integration Testing,您将如何编写集成测试来测试我的节点应用程序中的条带集成 现在我有一个非常简单的节点应用程序,它使用Stripe来接受信用卡/借记卡支付 我正在使用以下条带库 e、 g 我可以手动测试功能 如何使用集成和单元测试来测试此功能?您可以采取几种方法。第一种方法是使用测试API密钥针对条带帐户的测试模式数据测试调用: Stripe有许多可用于测试模式测试的卡号,这些卡号都在此处定义: 请注意,您可以使用测试密钥安全地对API进行任何调用,并且该行为(在几乎所有方面)将模拟在实时模式下发生的情况,但不

您将如何编写集成测试来测试我的节点应用程序中的条带集成

现在我有一个非常简单的节点应用程序,它使用Stripe来接受信用卡/借记卡支付

我正在使用以下条带库

e、 g

我可以手动测试功能


如何使用集成和单元测试来测试此功能?

您可以采取几种方法。第一种方法是使用测试API密钥针对条带帐户的测试模式数据测试调用:

Stripe有许多可用于测试模式测试的卡号,这些卡号都在此处定义:

请注意,您可以使用测试密钥安全地对API进行任何调用,并且该行为(在几乎所有方面)将模拟在实时模式下发生的情况,但不会产生任何实际费用:

除了使用测试API密钥或完全模拟条带节点依赖关系外,另一种方法是使用条带的官方模拟服务器:

其思想是,您的ci/测试环境将运行模拟服务器,而不是使用测试密钥访问真正的条带API,而是访问模拟服务器:

const stripe = new Stripe("sk_test_xyz", {
  host: "localhost",
  protocol: "http",
  port: 12111,
});
如果您像上面那样初始化
条带节点
,您的呼叫将发送到
http://localhost:12111
而不是
https://api.stripe.com

const stripe = new Stripe("sk_test_xyz", {
  host: "localhost",
  protocol: "http",
  port: 12111,
});