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
Backside of coverage measurement of Go
Search
po3rin
May 20, 2019
Programming
1
94
Backside of coverage measurement of Go
Go Conference Tokyo 二次会のLTです!Goのカバレッジ計測の裏側について
po3rin
May 20, 2019
Tweet
Share
More Decks by po3rin
See All by po3rin
自作LLM Native GORM Pluginで実現する AI Agentバックテスト基盤構築
po3rin
2
390
麻雀点数計算問題生成タスクから学ぶ Single Agentの限界と Agentic Workflowの底力
po3rin
5
2.3k
LLMOpsのパフォーマンスを支える技術と現場で実践した改善
po3rin
8
1.1k
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
4
2.5k
M3におけるCI/CDパイプラインを新鮮に保つ仕組み
po3rin
0
390
Go Templateを使った フロントエンド開発を採用した 経緯と所感
po3rin
1
360
検索基盤移行時の思考
po3rin
0
4.3k
Go1.19で採用された Pattern-defeating Quicksort の紹介
po3rin
7
6.2k
Elasticsearchを負荷から守るesguard
po3rin
0
310
Other Decks in Programming
See All in Programming
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
350
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
600
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
620
iOSでSVG画像を扱う
kishikawakatsumi
0
140
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
1
340
開発生産性を上げるための生成AI活用術
starfish719
3
1.5k
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
11
6.9k
CSC305 Lecture 09
javiergs
PRO
0
280
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
3.8k
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
170
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
180
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
410
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
54
11k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Practical Orchestrator
shlominoach
190
11k
A designer walks into a library…
pauljervisheath
209
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
KATA
mclloyd
PRO
32
15k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
How STYLIGHT went responsive
nonsquared
100
5.8k
Writing Fast Ruby
sferik
629
62k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
Backside of coverage measurement In Go Gopher Conference Tokyo 2019
Spring Second party May 20, 2019 @ po3rin
@po3rin Software Enginner @ Shiroyagi Corporation QBHF Golang / Python
/ Rust / Docker / AWS / Elasticsearch
QBHF (P$POGFSFODF5PLZP4QSJOHͰొஃ͠·ͨ͠ʂʂ IUUQTTQFBLFSEFDLDPNQPSJOEJWFJOUPCVJMELJUMMCXJUIHP
QBHF Introduction \
QBHF (Pඪ४ͰςετΧόϨοδΛऔΕΔ Coverage of Go Ὂ
QBHF What happened Ὂ ۀͰ$PWFSBHFͷؔͰΤϥʔ͕ɻɻͦ ͜Ͱؾ͍ͮͨ(PͷΧόϨοδͷ୲อ͢ΔͷͱԿ ͳͷ͔ΛΧόϨοδܭଌͷ࣮͔ΒௐͯΈ·ͨ͠
QBHF ɾ(PͷΧόϨοδ͕ͲͷΑ͏ʹߦΘΕ͍ͯΔ ͍ͷ͔ΛཧղͰ͖Δ ɾ(PͷΧόϨοδͷܭଌํ๏͔Β։ൃ࣌ʹ ҙ͢Δ͖͜ͱΛֶΔ Ὂ the benefits of this
talk
QBHF Reading Go source code of “cover” \
QBHF Reading Go source code of “cover” (1) Ὂ HJUIVCDPNHPMBOHHP
TSDDNEDPWFS DPWFSHP
QBHF Reading Go source code of “cover” (2) Ὂ QBSTFS1BSTF'JMFͰ(PϑΝΠϧΛ੩తղੳ͍ͯ͠Δɻ
FSSলུ
QBHF Reading Go source code of “cover” (3) Ὂ QBSTFS1BSTF'JMFͰಘͨ
BTU'JMFΛ͞Βʹಠࣗͷ DPWFS'JMFߏମʹ֨ೲ͍ͯ͠ ΔɻͦΕΛBTU8BMLʹͯ͠ ͍Δɻͭ·ΓDPWFS'JMF BTU7JTJUJOUFSGBDFΛ࣮ͯ͠ ͍Δͷ͕Θ͔Δ
QBHF Reading Go source code of “cover” (3) Ὂ BTU#MPDLʹͨͲΓண͘·Ͱ8BMLΛճ͠ଓ͚ɺϒϩοΫΛ
ݟ͚ͭͨΒBEE$PVOUFSTΛಡΜͰ͍Δ
QBHF Reading Go source code of “cover” (3) Ὂ BEE$PVOUFST͕ίʔυʹΧϯλʔΛࠩ͠ࠐΜͰɺς
ετதʹ͜͜Λ௨͔ͬͨΛه͍ͯ͠Δɻ #PEZলུ
QBHF Show annotated source code Ὂ DPWFSBHFܭଌதʹΧϯ λʔࠐΜͩίʔυ͕Ͳ͏ ͳ͍ͬͯΔͷ͔ΛݟΔͨΊ ͚ͩͷ୭ಘϚχΞ͚πʔ
ϧɻ
QBHF Show annotated source code Ὂ
QBHF ΧόϨοδܭଌͷछྨ Ὂ ໋ྩཏɿTUBUFNFOUDPWFSBHFʣ ذཏɿCSBODIDPWFSBHFʣ ݅ཏɿDPOEJUJPODPWFSBHFʣ C0 C1 C2
QBHF ΧόϨοδܭଌͷछྨ Ὂ BCUSVF ͷ̍έʔεΛ࣮ߦ͢Ε BCUSVF BCGBMTF ͷέʔεΛ࣮ߦ͢Ε BͱCͷUSVFPSGBMTFͷΈ߹Θͤ έʔεΛ࣮ߦ͢Ε
C0 C1 C2
QBHF ΧόϨοδܭଌͷछྨ Ὂ BCUSVF ͷ̍έʔεΛ࣮ߦ͢Ε BCUSVF BCGBMTF ͷέʔεΛ࣮ߦ͢Ε BͱCͷUSVFPSGBMTFͷΈ߹Θͤ έʔεΛ࣮ߦ͢Ε
C0 C1 C2
QBHF ͭ·Γ(PͷΧόϨοδܭଌ C0 !!!
QBHF ΧόϨοδͰશύλʔϯΛཏͰ͖͍ͯΔ༁Ͱͳ͍ɻ ΧόϨοδ͚ͩʹཔΓΒͣʹɺͪΌΜͱࣗͰύλʔϯΛ ཏͰ͖͍ͯΔ͔ҙ࣮͍ͯͯ͘͠͠ඞཁ͕͋Δɻ
QBHF Additional Talk \
QBHF (Pͷ੩తղੳΛղઆͨ͠ബ͍ ຊʂ#PPUIͰൢച͞Εͯ·͢ɻ ੩తղੳʹڵຯΛ࣋ͬͨΒ͜Ε ΛಡΊྑ͍ɻ
QBHF (P$POGFSFODF5PLZP4QSJOHͰొஃ͠·͢ɻ Ὂ
Backside of coverage measurement In Go Gopher Conference Tokyo 2019
Spring Second party May 20, 2019 @ po3rin