新条带校验的单元测试



这不是什么代码,因为我对测试还很陌生。我已经用capybara和rsspec做了几个单元测试,但它们都在我现有的应用程序上。对于Stripe来说,一旦你点击结账按钮,你就会被重定向到他们自己的结账页面,从那里我失去了控制或访问任何页面的任何方式。

基本测试代码如下:

it "visits stripe checkout" do 
login_as(user)
visit my_page
click_button "Checkout"
sleep(2) // im adding sleep to delay it since there's a bit of loading once checkout is clicked
// From here I cant access anything anymore such as
expect(page).to have_selector(".ProductSummary-totalAmount", text: "$20.00")
//Note: This is just for me to confirm Im in the page and that is the actual class name on the checkout app
end

如果有人能帮我或给我指明正确的方向,我将不胜感激。如果有人能给我展示一个如何在结账页面上填写凭据的例子,那就更好了。链接也有帮助。

附言:我做了研究,但大多数讨论都是使用旧的stripe结账,这只是一个iframe/modal。

测试的一般规则是,您应该测试自己的代码,而不是其他代码。测试Stripe Checkout会给你的测试增加不必要的复杂性,而且很脆弱,如果Stripe在他们的Checkout页面上更改了一些破坏你测试的东西怎么办?

相反,您应该测试您的按钮是否可以被点击,并模拟来自stripe.redirectToCheckout的可能响应。您还可以测试在创建"签出会话"时设置的成功和取消URL是否按预期呈现和工作。

相关内容

  • 没有找到相关文章

最新更新