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
GitHub Actionsでテストの結果をわかりやすく表示する
Search
Kishikawa Katsumi
October 18, 2021
Programming
2.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub Actionsでテストの結果をわかりやすく表示する
Kishikawa Katsumi
October 18, 2021
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
140
Running Swift without an OS
kishikawakatsumi
0
940
浮動小数の比較について
kishikawakatsumi
0
540
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
250
愛される翻訳の秘訣
kishikawakatsumi
3
450
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
240
Build your own WebP codec in Swift
kishikawakatsumi
2
2.3k
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
330
Other Decks in Programming
See All in Programming
CSC307 Lecture 17
javiergs
PRO
0
320
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
330
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
260
Oxcを導入して開発体験が向上した話
yug1224
4
310
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
590
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
330
3Dシーンの圧縮
fadis
1
770
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
220
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
190
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
190
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
1.2k
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
750
Featured
See All Featured
From π to Pie charts
rasagy
0
210
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
170
Speed Design
sergeychernyshev
33
1.8k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
150
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
310
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
The World Runs on Bad Software
bkeepers
PRO
72
12k
For a Future-Friendly Web
brad_frost
183
10k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
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