问题标签 [simplecov]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
505 浏览

rspec-rails - simplecov-rcov 正在抛出 Encoding::UndefinedConversionError

我有以下设置

宝石文件

spec_helper.rb

在规范中,我对视图进行了测试。

运行测试并且 rcov 尝试保存 rcov_result 后,我​​收到以下错误:

有没有办法解决这个问题?

0 投票
1 回答
1048 浏览

ruby - Simplecov 无法在 Ruby 2.6.3 中完成 rspec 套件退出

因此,在将与我的应用程序一起使用的 Ruby 版本从 2.5.5 升级到 2.6.3 之后,simplecov 0.17.0 现在在我的测试套件结束时静默且永久地挂起。

我正在运行 Ruby 2.6.3 和 Rails 5.2.3。

至于其他可能相关的内容,我正在运行 capybara 3.26.0 并且正在使用 RSpec。

我尝试的一件事是在我的 SimpleCov.start 块中添加“use_merging false”,正如我看到的那样。我没有运气。

这是我得到的输出示例:

然后这就是它挂起的地方。

任何帮助是极大的赞赏!

编辑:SimpleCov 配置:

0 投票
1 回答
236 浏览

ruby - 带有独立 .rb 代码的 Ruby SimpleCov 0.0 LOC

我正在尝试使用 SimpleCov 来收集代码覆盖率信息,但我似乎无法理解它是如何工作的。它总是给我 0.0% 的 LOC。我需要做些什么来让它工作吗?

我看到以下输出:

$ ruby​​ mytest.rb

12345

为 /private/tmp/simpletest/coverage 的单元测试生成的覆​​盖率报告。0.0 / 0.0 LOC (100.0%) 覆盖。

我必须在rspec或一些特殊环境下使用它吗?我不能只为任意代码启用代码覆盖吗?

0 投票
1 回答
187 浏览

ruby-on-rails - 为什么 SimpleCov 不能识别我的模块测试?

我在 app/helpers 中有一个模块,我已经在 test/helpers 中编写了测试,但是在运行 SimpleCov 之后,它显示我的助手的覆盖率为 0%。

我正在使用 MiniTest 运行我的测试,SimpleCov 看起来准确地报告了我的其他文件的测试覆盖率。对于我的模块,我有:

对于我的测试文件,我有:

知道为什么 SimpleCov 可能无法识别我的测试吗?

0 投票
1 回答
267 浏览

ruby-on-rails - 在 Rails 代码中使用 SimpleCov 在 MiniTest 中获取所有错误和失败的测试用例

每当我的 rake 测试(Minitest)失败时,我都会尝试将所有失败的测试用例错误发送到电子邮件中,现在它会在终端中显示错误和失败的测试用例。

我不知道如何在某些 rails 变量中捕获这些failed test cases errorsfailed cases相关信息并在电子邮件中发送这些错误。

每次我的测试用例失败时,我只想以编程方式在 Rails 中获取错误,就像我运行时在终端中显示的那样rake test

也探索了 Simplecov Github 文档,但没有找到任何东西

我正在使用这 3 个 gem 来生成覆盖率报告,包括 Minitest gem

https://github.com/colszowka/simplecov

就像终端中的这种失败案例

任何帮助将不胜感激。

在此处输入图像描述

0 投票
1 回答
2130 浏览

rubygems - Rails:SimpleCov 退出 1 失败 - 如何解决这个问题

我正在将 rails 应用程序从 升级rails 4.25.0. 然后,到5.1, 5.2。它正在使用ruby 2.6.4.

当我运行我的规范测试时,我得到了错误:SimpleCov failed with exit 1. 我无法使用 Google 找到任何特定于此的信息。我已经阅读了 gem 的文档,但我找不到任何信息可以帮助我了解导致此问题的原因或如何解决它。

我还在 Gemfile 中进行了这些更改以开始bundle update rails工作。


我没有simplecov-html在我的 Gemfile 中列出,所以我不明白为什么 Gemfile.lock 将 gem 显示为0.110.12.2. 这是一个问题吗?


为了消除一些不相关的弃用警告,我不得不对这些文件进行更改。复制git diff 自在此处注意它们,以防万一...


运行规范测试


我不认为 manifest.js 输出是相关的,但留下它以防万一它是任何人的线索。

第 18 - 21 行包含我们编写的两个文件(不是由 ruby​​/rails 创建的)。


我不知道任何可能包含任何线索的日志文件。我通过 Google 阅读了很多主题,但没有找到任何与我的实际主题相关的主题。

任何帮助将不胜感激。

约翰C

0 投票
1 回答
452 浏览

ruby - Ruby 代码覆盖率:SimpleCov + MiniTest?

我将 SimpleCov 集成到我的 Ruby 项目(简单的 Ruby Gem 项目,无框架)中,该项目使用 MiniTest 进行测试。

这里是test_helper.rb

我所有的测试文件都有require 'test_helper.rb'.

运行所有测试(来自 RubyMine 或 with bundle exec rake)工作并创建 HTML 报告。

但是,它包含...我的一个测试类的覆盖范围?我希望看到测试调用的所有类的覆盖率报告(位于标准/lib文件夹下)。

这是生成的报告:

https://user-images.githubusercontent.com/6305156/80513538-df68d080-8987-11ea-9858-43a3a2673e31.png

项目链接:https ://github.com/ruby-ee/ruby-stream-api/tree/10 这是一个简单的,刚刚开始的Ruby Gem。

任何帮助是极大的赞赏。谢谢!

0 投票
1 回答
108 浏览

ruby-on-rails - 如何对 current_user RoR 进行单元测试

我有这种方法来检查用户是否是管理员:

单元测试是:

问题是,simplecov 告诉我这部分current_user.admin == true没有被涵盖。

如何在此测试中测试 current_user?

0 投票
1 回答
140 浏览

ruby-on-rails - SimpleCov Rspec 覆盖不处理前置文件

我正在使用 Spree gem 和 Rails 6。我为 Spree::Variant 和 Spree::Product 创建装饰器

变体装饰器.rb:

product_decorator.rb

我为display_price_cadisplay_price_us创建了简单的 Rspec

SimpleCov 不处理装饰器并向我展示:

我在 spec_hepler.rb 中启动了 SimpeCov:

结果variant_decorator.rbSimpleCov 报告

我看到行没有被覆盖,但它应该被覆盖。可能是什么问题以及如何解决?谢谢。

0 投票
1 回答
341 浏览

ruby-on-rails - Simplecov 在 Rails 6 中没有显示正确的覆盖率

Simplecov 似乎不适用于默认设置的 Rails 5 或 6,报告显示覆盖率为 0%。

解决方法是什么?