启用 JavaScript 的测试出错(Bootstrap 3、Rails 4、Travis CI)

2024-01-07

我有一个奇怪的错误,只出现在 CI 环境中。这个错误在开发、生产甚至本地测试环境中都不会出现。

ActionController::RoutingError: No route matches [GET] "/fonts/bootstrap/glyphicons-halflings-regular.svg"

可以找到完整的踪迹here https://travis-ci.org/szyablitsky/stackoverflow/builds/32136015

在开发和生产环境中,成功的请求会转到/assets/bootstrap/glyphicons-halflings-regular.woff。有一个区别/fonts/ - /assets and svg - woff部分。由 JavaScript 启用的测试(Poltergeist / PhantomJS 驱动程序)生成的所有错误。常规水豚测试都是绿色的。 Chrome devtools 表示对字体文件的请求是由 jquery.js 生成的,而不是页面或 css 文件。


这与bootstrap-sass宝石。我将其版本 3.3.4.1 与 Rails 4.2 一起使用。

我提出的问题非常相似,但略有不同:CI 中的相同错误,404/fonts/bootstrap/glyphicons-halflings-regular.woff但开发的道路不同,/fonts/glyphicons....

对我有用的解决方案是在使用 SASS 包含 bootstrap JS 之前添加以下行:

$icon-font-path: "bootstrap/";
@import 'bootstrap';

我最好的线索来自宝石跟踪器中对此问题的评论:https://github.com/twbs/bootstrap-sass/issues/480#issuecomment-49237119 https://github.com/twbs/bootstrap-sass/issues/480#issuecomment-49237119

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

启用 JavaScript 的测试出错(Bootstrap 3、Rails 4、Travis CI) 的相关文章

随机推荐