gpt4 book ai didi

javascript - 需要外部库的 Jasmine 测试

转载 作者:搜寻专家 更新时间:2023-11-01 04:09:35 25 4
gpt4 key购买 nike

我想知道使用 Jasmine 测试需要在页面加载时调用但不在应用程序中调用远程库的 javascript 的最佳实践或至少是一种实践。

更具体地说,我正在创建一个主干 View ,用于使用 strip 处理付款。 Stripe 建议您从他们的服务器将他们的 javascript 加载到您的布局中。

但是我的测试没有我的布局,所以当我尝试这样做时

it("calls stripe token creation", function() {
stripeSpy = spyOn(Stripe, "createToken");
form.submit();
expect(stripeSpy).toHaveBeenCalled();
});

它给出了错误。

Stripe is not defined

我宁愿不依赖远程库进行测试,也不想违背 stripe 首选的依赖其源代码的方法。解决这个问题的最佳方法是什么?

最佳答案

要模拟 Stripe 依赖项,您必须使用要调用的函数创建一个新的 Stripe 对象:

var Stripe = {createToken: sinon.spy()} 
form.submit();
expect(Stripe.createToken).toHaveBeenCalled();

关于javascript - 需要外部库的 Jasmine 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18884275/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com