2017-03-06 8 views
2

アプリケーションのコードカバレッジを調べるために使用できる他の方法や宝石はありませんか?私は、miniunitのテストケースではSimpleCovとRCovがあることを発見しました。私は現在、Ruby 2.1とレール4.2.1でMiniunitテストフレームワークを使用しています。レールのテストカバレッジ

答えて

2

テストカバレッジ用に最適な2つの宝石はSimpleCovとRcovです。また、GitHubをサポートするホスティングされたソリューションにcoveralls.ioを使用することもできます。

2

ほとんどの場合、Rails用の最良のコードカバレッジソリューションはSimpleCovです。

Rcovは、Ruby 1.9以上ではうまく動作しないため、今は時代遅れです。

また、突然変異検査に興味がある場合はmutant gemをご覧ください。

考えられるのは、コードを変更してテストに気付かない場合、そのコードがカバーされていないか、または指定された副作用がないという考えです。

現在のところRSpecのみがサポートされています。最小限の統合はまだ進行中です。

これは約articleです。 基本的に、RcovとSimpleCovはラインカバレッジのみをチェックします。

突然変異検査では、コードとテストが必要です。これは、コードを抽象構文木に解析します。それはツリーのノードを変更します(突然変異)。それは記憶の中でそれを行います。その結果、私たちは現在変異体を持っています - あなたのコードの突然変異バージョン...ここでのアイデアは、その突然変異体をテストしなければならないということです。突然変異体を殺すことは、突然変異したコードでテストが失敗した場合に起こります。すべての突然変異体を殺すと、100%のテストカバレッジがあることを意味します。つまり、すべてのコードの詳細をテストすることになります。これは、あなたが安全にリファクタリングでき、あなたのテストが本当にあなたをカバーしていることを意味します。

関連する問題