简单覆盖路线没有显示出来

问题描述:

我有一个Rails应用程序,当我跑我的测试,我在完成我的/ COV文件夹简单覆盖路线没有显示出来

Finished in 20.6 seconds 
19 examples, 0 failures 
Coverage report generated for RSpec to /Users/nicholasshook/Sites/<<my project>>/coverage. 264/446 LOC (59.19%) covered. 

创建新文件。

然而,当我尝试去到localhost /报道/ index.html的我得到这个错误

No route matches [GET] "/coverage/index.html" 

感谢

+0

/coverage的位置在哪里?在/控制器下? – Catfish 2013-02-21 22:06:55

+0

它在我的rails应用程序的根目录下。我可以尝试将它移动到控制器。 编辑:没有改变什么 – shicholas 2013-02-21 22:37:05

如果您使用SimpleCov或一些类似宝石生成测试结果,这些是静态的HTML文件,这些文件可以在您的机器上本地查看。 I.E.只需浏览到/ Users/nicholasshook/Sites/<> /coverage/index.html,然后在浏览器中打开该文件。

出于安全性和可管理性的原因,Rails不会为/coverage/index.html创建路由。您可以创建一个静态html页面的路由,但它们必须位于/ public目录中。如果您需要的覆盖效果是可访问在你的应用程序,你有几种选择:

  1. 将您的保险文件到/ public目录,并使用像High_Voltage https://github.com/thoughtbot/high_voltage宝石,以创造有路线
  2. 你要么需要重新配置覆盖工具把文件在/ public目录,或手动将它们复制了
+0

高电压没有工作,它说我的index.html是不是有效的UTF-8。但是,移动公用文件夹内的整个/覆盖文件夹工作。更新我的.gitignore以反映更改。 谢谢! – shicholas 2013-02-22 00:42:28

我在管理使用以下行SimpleCov.start“轨道”后,要做到这一点我spec_helper.rb文件。

SimpleCov.start 'rails' 
SimpleCov.root('/my/app/root/directory/public') 

您还应该添加/公/覆盖到你的.gitignore文件

Τhis打破覆盖。它会更好:

cd public && ln -s ../coverage coverage