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
150
Running Swift without an OS
kishikawakatsumi
0
960
浮動小数の比較について
kishikawakatsumi
0
570
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
260
愛される翻訳の秘訣
kishikawakatsumi
3
460
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
250
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
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
200
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.3k
関数型プログラミングのメリットって何だろう?
wanko_it
0
140
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
210
Webフレームワークの ベンチマークについて
yusukebe
0
200
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
1k
Contextとはなにか
chiroruxx
1
390
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
160
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
470
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.7k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
340
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
830
Featured
See All Featured
How GitHub (no longer) Works
holman
316
150k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Scaling GitHub
holman
464
140k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
190
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Building an army of robots
kneath
306
46k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
The Cult of Friendly URLs
andyhume
79
6.9k
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