Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Codecov 〜テストカバレッジ可視化ウェブサービスの紹介〜
Search
Pine Mizune
September 01, 2015
Programming
510
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
900
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
710
Lerna による明示的疎結合アーキテクチャ
pine
1
690
CircleCI 2.0 x JavaScript
pine
3
580
Perl 卒業式
pine
0
380
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
540
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
世界の中心で、AI(App Intents)をさけぶ ー App Intents中心設計の実践ガイド
touyou
0
750
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
470
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
230
mrbgem 三角測量 開発
ogom
0
180
速習iPhone Duo対応
yuukiw00w
2
930
Webの地図
yosuke_furukawa
PRO
6
5k
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
33
14k
Androidだけじゃない、DroidKaigiで広がった私の技術スタック
akkeylab
0
110
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
250
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.6k
JAWS-UG 東京支部が始める、JAWS-UG支部コラボ / JAWS-UG lunchtime LT Collaboration
y0hgi
0
170
大喜利で理解するLLM as a Judge / Understanding LLM-as-a-Judge through Ogiri
rockname
0
190
Featured
See All Featured
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
58k
Building AI with AI
inesmontani
PRO
1
1.3k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
300
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
550
RailsConf 2023
tenderlove
30
1.6k
Facilitating Awesome Meetings
lara
57
7.2k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.2k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
560
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
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 より軽い