Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Codecov 〜テストカバレッジ可視化ウェブサービスの紹介〜

Pine Mizune
September 01, 2015

Codecov 〜テストカバレッジ可視化ウェブサービスの紹介〜

会社の技術勉強会で発表した資料

Pine Mizune

September 01, 2015
Tweet

More Decks by Pine Mizune

Other Decks in Programming

Transcript

  1. テストとカバレッジ (1/2) 4 コード網羅率(コードもうらりつ、英: Code coverage )コードカ バレッジは、ソフトウェアテストで用いられる尺度 の1つ である。プログラムのソースコードが

    テストされた割合 を意味 する。 by Wikipedia: コード網羅率 ü  きちんとテストされているか ? ü  どこがテストされていないか ? カバレッジを取ることにより、 を視覚的に明示可能
  2. テストとカバレッジ (2/2) 5 subtest fac => sub { is is_leap_year(2001),

    0; is is_leap_year(2004), 1; is is_leap_year(2100), 0; }; sub is_leap_year { my $year = shift; if ($year % 400 == 0) { return 1; } if ($year % 4 == 0) { if ($year % 100 != 0) { return 1; } return 0; } return 0; } ü  うるう年か判定するプログラム ü  テスト カバレッジは何 % ? ※ コードはサンプル用に長く書いてあります ※ ここでいうカバレッジは C0 (命令網羅) です
  3. Codecov とは ? (1/2) 6   カバレッジを見やすく表示するウェブサービス   同様のサービス: Coveralls

    $ git push GitHub CI Codecov ブラウザで閲覧 カバレッジ データ WebHook 開発者
  4. 7

  5. Codecov と Coveralls の違い 8   機能的には、ほとんど同じ   Coveralls に比べて軽い

      Coveralls に比べて軽い   Coveralls に比べて軽い ü  忌々しいカバレッジ送信エラーが起きない
  6. 実演 9   Perl のプロジェクト x Codecov   テスト実行: prove

      カバレッジ計測: Devel::Cover   カバレッジ送信: Devel::Cover::Report::Codecov https://github.com/codecov/codecov-perl ↑ Author: PINE