Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Codecov 〜テストカバレッジ可視化ウェブサービスの紹介〜
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Pine Mizune
September 01, 2015
Programming
500
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Codecov 〜テストカバレッジ可視化ウェブサービスの紹介〜
会社の技術勉強会で発表した資料
Pine Mizune
September 01, 2015
More Decks by Pine Mizune
See All by Pine Mizune
多言語対応と絵文字ジェネレーター / i18n of Emoji Generator
pine
0
880
C++ 製グラフィックライブラリ Skia の紹介 / Introduction to the graphics library Skia written by C++
pine
0
2k
asyncio + aiohttp で作るウェブサービス / How to develop a web service with asyncio and aiohttp
pine
0
700
Lerna による明示的疎結合アーキテクチャ
pine
1
680
CircleCI 2.0 x JavaScript
pine
3
570
Perl 卒業式
pine
0
370
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
530
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
500
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
240
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
140
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
150
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
6.9k
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
8
15k
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
550
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
200
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
720
yield再入門 #phpcon
o0h
PRO
0
740
AIエージェントで 変わるAndroid開発環境
takahirom
2
720
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
350
It's Worth the Effort
3n
188
29k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
57k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
660
sira's awesome portfolio website redesign presentation
elsirapls
0
310
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
Building the Perfect Custom Keyboard
takai
2
820
Transcript
Codecov Code coverage done right. 1 Sep, 2015 水音 氷音
ターゲット層と伝えたいこと テストとカバレッジ Codecov とは ? Codecov と Coveralls
の違い 実演 まとめ 目次 2
ターゲット層と伝えたいこと ターゲット層 ü テストするなら、カバレッジを取ろう ü Coveralls はやめて Codecov を使おう 伝えたいこと
ü カバレッジについて知らない・日常取らない人 ü Codecov を使ったことがない人 3
テストとカバレッジ (1/2) 4 コード網羅率(コードもうらりつ、英: Code coverage )コードカ バレッジは、ソフトウェアテストで用いられる尺度 の1つ である。プログラムのソースコードが
テストされた割合 を意味 する。 by Wikipedia: コード網羅率 ü きちんとテストされているか ? ü どこがテストされていないか ? カバレッジを取ることにより、 を視覚的に明示可能
テストとカバレッジ (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 (命令網羅) です
Codecov とは ? (1/2) 6 カバレッジを見やすく表示するウェブサービス 同様のサービス: Coveralls
$ git push GitHub CI Codecov ブラウザで閲覧 カバレッジ データ WebHook 開発者
7
Codecov と Coveralls の違い 8 機能的には、ほとんど同じ Coveralls に比べて軽い
Coveralls に比べて軽い Coveralls に比べて軽い ü 忌々しいカバレッジ送信エラーが起きない
実演 9 Perl のプロジェクト x Codecov テスト実行: prove
カバレッジ計測: Devel::Cover カバレッジ送信: Devel::Cover::Report::Codecov https://github.com/codecov/codecov-perl ↑ Author: PINE
まとめ 10 カバレッジを取ることで テストの十分・不十分が可視化できる Perl でカバレッジを取るには テスト時に Devel::Cover
を使う Codecov は Coveralls より軽い