我编写了一个使用 Braintree Java SDK 的服务器端 Clojure 服务。它会请求创建支付令牌、创建客户、处理通知等。我编写了一套测试,通过调用 Braintree 沙箱来测试所有这些。这一切都很好,直到我尝试在 Travis 上运行测试。
在 Travis 上,至少 50% 的情况下,我的构建会因为超时而失败,并且我已将调用范围缩小到对 Braintree SDK 的第一次调用(在我的情况下是查找客户,但似乎没有不管先叫什么)。代码在那里等待几分钟,等待调用完成。有时它会很快发生,有时 10 分钟过去了,Travis 的工作就放弃了。这在本地永远不会发生。
有谁知道发生了什么?由于它似乎只影响对 Braintree 的第一次调用,也许与握手过程有关?有没有其他人看到这个问题?