运行 Cypress 测试(调用清理函数来删除 Stripe 中的用户)时,出现以下错误:
Body: { "status": 500, "message": "清理条带时出错 测试数据”,“错误”:“stripe.customers.cancel 不是一个函数”}
在 Github 上的这个问题 中,它说我需要使用 9.x 或更高版本。但是,当在安装此软件包的目录中运行
npm list
时,我可以看到我正在使用 v14.18.0。我仔细检查了是否存在冲突的全局包,但似乎没有。这目前阻止我进行测试,有其他人经历过这种情况或者知道去哪里查看吗?
出于好奇,这是 Cypress 调用的用于清理测试数据的函数:
const cleanAllCustomersExcept = async function cleanAllCustomersExcept(customersToKeep) {
// Delete customers
const customers = await stripe.customers.list();
console.log(stripe.customers);
const customersList = customers.data;
await Promise.all(
customersList.map(
async (customer) => (customersToKeep.includes(customer.id)
? null
: stripe.customers.cancel(customer.id)
.then(() => {
console.log(`Deleting customer ${customer.id}`);
})),
),
);
if (customers.has_more) {
return cleanAllCustomersExcept(customersToKeep);
}
console.log('Done removing all customers');
return null;
}