为什么我的coveralls.io徽章即使在构建发生时也不会更新?

时间:2014-05-21 15:49:35

标签: github code-coverage coveralls

我正在尝试使用coveralls.io为我的测试显示一个覆盖徽章,但是覆盖范围徽章仍然停留在"未知"。

相关的回购在这里:https://github.com/cfogelberg/grunt-set-app-mode

当我看到coforls.io的那个回购时,我看到同样的"覆盖范围:未知"状态:coveralls.io/r/cfogelberg/grunt-set-app-mode

但是,正在将各个版本正确发送到coveralls.io:https://coveralls.io/builds/788669

我错过了什么?

7 个答案:

答案 0 :(得分:3)

自发布此问题以来,我已推送更多提交并多次重新运行工作服任务,并且现在可以使用覆盖徽章:

https://github.com/cfogelberg/grunt-set-app-mode/compare/4FB59ACC...58E23E5373

目前尚不清楚为什么它现在有效,而不是更早。自上次在工作服上构建失败以来,工作服已添加到默认任务中。但是,它被添加到默认任务并推送到Github,而不是工作服的下一个版本,它只更改了README.md文件(修复了david-dm.org徽章的链接)。

我担心这不是一个真正的“解决方案”,我仍然很想知道(不知道为什么/谁投票的问题),但无论如何我希望这些信息对其他人有用在将来。

答案 1 :(得分:2)

  

我错过了什么?

您的浏览器可能会缓存图片。我意识到这最近发生在我身上。我无法理解为什么我的徽章在我的github页面上说了一件事,但在徽章的网站上有不同之处。

现在我倾向于在Chrome隐身窗口中检查网站,因此我没有担心缓存。

答案 2 :(得分:1)

如果清除本地缓存不能修复图像,则问题可能出在Github对其进行图像URL匿名化处理的过程中。

您可以使用以下curl命令强制Github清除其图像缓存。将示例URL更改为您的仓库中的URL,它将始终为https://camo.githubusercontent.com/,后跟一个长哈希。

curl -X PURGE https://camo.githubusercontent.com/4d04abe0044d94fefcf9af2133223....

来源:GitHub Help: About anonymized image URLs

答案 3 :(得分:1)

我已经解决了这个问题,在我的 github 操作工作流结束时添加了一个 PURGE 请求以清除 GitHub 缓存的徽章副本:

$ curl -X PURGE https://camo.githubusercontent.com/4d04abe0044d94fefcf9af2133223....

我使用了 http-request-action :

- name: refresh coverage badge
      uses: fjogeleit/http-request-action@master
      with:
        url: https://camo.githubusercontent.com/12c4fcb3b21fbb2a725fc61449fb1b91e972c4c8a2baaf5904936d8e334bdbe8/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f62336230302f63736c792f62616467652e7376673f6272616e63683d64657626736572766963653d676974687562
        method: PURGE

答案 4 :(得分:0)

向徽章图片网址添加一个 queryString 参数,这是答案https://github.com/lemurheavy/coveralls-public/issues/1065#issuecomment-435494495

答案 5 :(得分:0)

我在这里尝试了其他建议,但似乎没有一个奏效。

here 安装禁用 Cookies chrome 扩展。

转到您的 github 项目,按禁用 cookie,然后将其恢复。

coveralls.io 徽章应在此之后更新。

怀疑同样的问题也适用于普通用户。

在我的情况下,图像无法刷新多少次我按下重新加载,使用清除或其他技巧(不想清除历史记录)。

匿名网页浏览有时也有帮助。

请注意,coveralls.io 报告需要时间来处理,因此至少需要等待几分钟。 (可以从coveralls.io网站查看)。

答案 6 :(得分:0)

您的浏览器缓存了徽章图像。要强制更新,请在重新加载浏览器选项卡时按住 SHIFT(在 macOS 上的 Brave 上,我通过 CMD + R 执行此操作)。