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

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

Avatar for Pine Mizune Pine Mizune
September 01, 2015

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

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

Avatar for Pine Mizune

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