Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
GitHub Actionsでテストの結果をわかりやすく表示する
Kishikawa Katsumi
October 18, 2021
Programming
1
1.1k
GitHub Actionsでテストの結果をわかりやすく表示する
Kishikawa Katsumi
October 18, 2021
Tweet
Share
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
Swift Expression Macros: a practical introduction
kishikawakatsumi
2
720
Xcode Cloudの評価
kishikawakatsumi
2
660
Regular expressions basics/正規表現の基本
kishikawakatsumi
6
410
家のいろいろな数値を計測する
kishikawakatsumi
4
1.5k
GitHub Actionsでテストの結果をわかりやすく表示する
kishikawakatsumi
1
310
Network ExtensionでiOSデバイス上で動くパケットキャプチャを作る
kishikawakatsumi
7
5.2k
Xcode Cloud at a glance
kishikawakatsumi
2
1.3k
StoreKit Testingについて
kishikawakatsumi
1
870
Build Swift Web Playground
kishikawakatsumi
1
180
Other Decks in Programming
See All in Programming
Rust、何もわからない...#6発表資料
ryu19
0
110
Remix + Cloudflare Pages + D1 で ポケモン SV のレンタルチームを検索できるアプリを作ってみた
kuroppe1819
4
1.3k
和暦を正しく扱うための暦の話
nagise
10
5.2k
Amebaブログの会員画面システム刷新の道程
ryotasugawara
1
220
NGK2023S - OCaml最高! スマホ開発にも使えちゃう?!
haochenxie
0
110
Cloudflare WorkersでGoを動かすライブラリを作っている話
syumai
1
310
SHOWROOMの分析目的を意識した伝え方・コミュニケーション
hatapu
0
230
Hono v3 - Do Everything, Run Anywhere, But Small, And Faster
yusukebe
4
130
量子コンピュータ時代のプログラミングセミナー / 20230119_Amplify_seminar _shift_optimization
fixstars
0
170
WordPress(再)入門 - 基礎知識・環境編
oleindesign
1
130
Micro Frontends with Module Federation @MicroFrontend Summit 2023
manfredsteyer
PRO
0
500
Workshop on Jetpack compose
aldefy
0
140
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
44
14k
Art Directing for the Web. Five minutes with CSS Template Areas
malarkey
196
9.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
226
130k
The Art of Programming - Codeland 2020
erikaheidi
35
11k
Producing Creativity
orderedlist
PRO
335
37k
Testing 201, or: Great Expectations
jmmastey
25
5.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
317
22k
Code Reviewing Like a Champion
maltzj
508
38k
Why You Should Never Use an ORM
jnunemaker
PRO
49
7.9k
KATA
mclloyd
12
9.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
109
16k
Making the Leap to Tech Lead
cromwellryan
117
7.7k
Transcript
GitHub ActionsͰςετͷ݁ՌΛ Θ͔Γ͘͢දࣔ͢Δ
None
None
None
None
None
Xcode result bundle
Xcode result bundle
$ xcresulttool
$ xcrun xcresulttool get --path results.xcresult --format json { "_type"
: { "_name" : "ActionsInvocationRecord" }, "actions" : { "_type" : { "_name" : "Array" }, "_values" : [ { "_type" : { "_name" : "ActionRecord" }, "actionResult" : { "_type" : { "_name" : "ActionResult" }, "coverage" : { "_type" : { "_name" : "CodeCoverageInfo" } }, "diagnosticsRef" : { "_type" : { "_name" : "Reference" }, "id" : { "_type" : { "_name" : "String" }, "_value" : "0~vHg7If_A0mZHPjzIsvdzoL3IMfYHwL0Z3rj6u9zpzhXhMGPmKNKQ6J5lQj8MHSuoz26pval1lC8J4W8bxYO52A==" }
$ xcrun xcresulttool get --path results.xcresult --format json { "_type"
: { "_name" : "ActionsInvocationRecord" }, "actions" : { "_type" : { "_name" : "Array" }, "_values" : [ { "_type" : { "_name" : "ActionRecord" }, "actionResult" : { "_type" : { "_name" : "ActionResult" }, "coverage" : { "_type" : { "_name" : "CodeCoverageInfo" } }, "diagnosticsRef" : { "_type" : { "_name" : "Reference" }, "id" : { "_type" : { "_name" : "String" }, "_value" : "0~vHg7If_A0mZHPjzIsvdzoL3IMfYHwL0Z3rj6u9zpzhXhMGPmKNKQ6J5lQj8MHSuoz26pval1lC8J4W8bxYO52A==" }
$ xcrun xcresulttool get --path results.xcresult --format json \ --id
"0~0I_MUIRIScR7EhYb3xNOgrrrCppe_B9k1ewbNE0HZs4qyaVJRD1xjS3UbUY272hciPa1kSxSDXXsRUODkYY2Uw==" { "_type" : { "_name" : "ActionsInvocationMetadata" }, "creatingWorkspaceFilePath" : { "_type" : { "_name" : "String" }, "_value" : "\/Users\/katsumi\/Develop\/Weather\/Weather.xcodeproj" },
$ xcrun xcresulttool get --path results.xcresult --format json \ --id
"0~0I_MUIRIScR7EhYb3xNOgrrrCppe_B9k1ewbNE0HZs4qyaVJRD1xjS3UbUY272hciPa1kSxSDXXsRUODkYY2Uw==" { "_type" : { "_name" : "ActionsInvocationMetadata" }, "creatingWorkspaceFilePath" : { "_type" : { "_name" : "String" }, "_value" : "\/Users\/katsumi\/Develop\/Weather\/Weather.xcodeproj" },
GitHub Checks API
None
Conclusion Summary Annotations
None
طͷɾ੍ݶࣄ߲ • Annotation̍εςοϓʹ͖ͭ10ݸ·ͰɺશମͰ50ݸ·Ͱ • UIςετதʹࡱͬͨεΫϦʔϯγϣοτΛΘ͔Γ͘͢ද͍ࣔͨ͠ • Artifactsʹอଘ͢Δ • Action͔ΒͷURLΛࢀর͢Δखஈ͕ͳ͍ •
ը૾ͱͯ͠ࢀর͢Δखஈ͕ͳ͍ʢZipʹͳΔʣ • Releaseʹอଘ͢Δ • Releaseʹλά͕ඞཁʢPR͝ͱʹ࡞Δʁʣ • ઐ༻ͷεΫϦʔϯγϣοτஔ͖ͷϦϙδτϦΛ࡞Δʁ • ϦϙδτϦʹίϛοτ͢Δ • ϦϙδτϦʹෆཁͳίϛοτ͕૿͑ΔʢϒϥϯνͰִ͢Ε͍͍͔ʣ • ઐ༻ͷϦϙδτϦΛ࡞Δʁ
None
References • ϝϧϖΠͰͷxcresult׆༻ࣄྫ | ϝϧΧϦΤϯδχΞϦϯά https://engineering.mercari.com/blog/entry/20201218-61f7110851/ • Xcode 11ͰͷςετपΓͷ৽ػೳΛհ͠·͢ʂ -
DeNA Testing Blog https://swet.dena.com/entry/2019/10/23/080000 • xcparse | ChargePoint https://www.chargepoint.com/engineering/xcparse/ • xcresulttool GitHub Actions https://github.com/kishikawakatsumi/xcresulttool