javascript - 使用 Cucumber 测试时 Stripe JS 失败

标签 javascript ruby-on-rails cucumber capybara stripe-payments

我在电子商务网站的结帐页面上使用 Stripe JS。在浏览器中手动测试时,流程运行得很好。但是,当使用 Cucumber 进行自动化测试时,我在提交表单时收到以下错误:

An unexpected error has occurred submitting your credit card to our secure credit card processor. This may be due to network connectivity issues, so you should try again (you won't be charged twice). If this problem persists, please let us know!

Stripe JS 在测试环境中无法工作,但在开发 + 生产中却可以正常工作,这是否有原因?

最佳答案

我不是 Stripe JS 专家,但是当我在使用 Cucumber + JS 时遇到问题时,大多数情况下有两种选择:

  1. 我需要在功能/场景之前添加@javascript标签(明显的问题)

  2. 在使用 js 功能的步骤之前需要一些延迟:

    When /^wait (\d) sec$/ do |delay|
      sleep delay.to_i
    end
    

显然,在测试中使用“ sleep ”并不是一个好的做法,但有时这是唯一的解决方法。

关于javascript - 使用 Cucumber 测试时 Stripe JS 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22391752/

相关文章:

Cucumber 测试用例输出格式化 [Java]

javascript - Bootstrap 中的选项卡 Pane

ruby-on-rails - idn-ruby 捆绑安装时出错

mysql - Rails - 跨多个关系有效地提取和计算数据

ruby-on-rails - Rails/Postgres 如果 hstore 值包含传递数组的值,如何查询它

javascript - cucumber JS : Custom parameter types not matching

javascript - 将鼠标光标更改为 Sprite div

javascript - path.join 的实际用途是什么?

Javascript 全局变量不会改变

java - driver.quit后如何打开chromedriver的新 session ?