【问题标题】:Travis build timeouts even though test output reports successTravis 构建超时,即使测试输出报告成功
【发布时间】:2015-08-04 04:37:24
【问题描述】:

我的 Travis 构建由于某种原因超时。 这是日志的链接:https://travis-ci.org/madedotcom/atomicpuppy/builds/70202335

还有我现在的 travis yml https://github.com/madedotcom/atomicpuppy/blob/master/.travis.yml

我试过用普通的脚本命令运行它

script: run-contexts --verbose

以及创建一个运行测试并使用 $ 退出的 bash 脚本?

script: ./run-tests.sh

# run-tests.sh
run-contexts --verbose ./tests 2>/dev/null
exit $?

即使这样也无济于事。

我最好的猜测是,由于依赖于异步 python 库,在我的 Travis 构建的后台运行了一些任务,但是如何在 Travis 上调试它呢?有什么办法可以增加冗长吗?

值得补充的是,本地测试运行速度非常快,并且使用相同的命令以 0 退出没有任何问题。

【问题讨论】:

  • 嘿 Piotr,我通过 fork 你的 repo 做了一些测试,似乎问题出在以下测试文件中:tests/test_posting.py。确实,当我重命名它以使其不执行时,您的构建已通过并正确完成。也许您可以仔细检查文件中的测试以查看问题所在?这是构建报告,其中包含使构建成功的更改:travis-ci.org/cotsog/atomicpuppy/builds/70238803。希望这会有所帮助!
  • 你好多米尼克,谢谢你的回答!我会仔细看看这个文件。您能否提供您为意识到问题出在此文件中而采取的步骤?我仍然对如何调试 travis 构建感到非常困惑,因为我无法在本地重现该问题。这将非常有帮助,当我找到最终解决方案时,我会将其包含在我的原始帖子中。
  • 我预感到问题可能出在您的测试中。因此,我一一重命名了您的测试文件,以查看是否可以使至少一个测试文件成功运行。当test_posting.py 被重命名/禁用时,我成功构建了。然后我重命名/重新启用了除test_posting.py 之外的所有其他测试文件,我又成功构建了一次。然后我得出结论,问题出在那个文件中。一种蛮力的方法。 ;-)

标签: python travis-ci httpretty


【解决方案1】:

解决方案: 升级HTTPretty的版本。

事实证明,一个名为 HTTPretty (issue can be found here) 的库存在一个已知问题,导致测试运行程序在 travis 上停止运行而没有产生任何错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-15
    • 2015-06-24
    • 1970-01-01
    • 2020-12-23
    • 2012-09-06
    相关资源
    最近更新 更多