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
Launchable and efficient test execution
Search
shibuiwilliam
March 17, 2022
Technology
0
160
Launchable and efficient test execution
test execution efficiency with predictive test selection by machine learning and Launchable
shibuiwilliam
March 17, 2022
Tweet
Share
More Decks by shibuiwilliam
See All by shibuiwilliam
生成AIのためのデータ収集とデータエンジニアリング
shibuiwilliam
4
450
LLMで推論するライブラリを整理する
shibuiwilliam
5
1.3k
生成AIの研究開発を事業につなげる データ、仕組み、コミュニケーション
shibuiwilliam
1
80
デプロイして本番システムで使うことから考えるAI
shibuiwilliam
2
620
今日からRAGを 始めることを考える
shibuiwilliam
2
1.6k
2024年生成AI新年会登壇資料
shibuiwilliam
0
330
Creative as Software Engineering
shibuiwilliam
2
640
Kubernetesクラスターを引き継ぐ技術
shibuiwilliam
3
340
機械学習システム構築実践ガイド
shibuiwilliam
1
920
Other Decks in Technology
See All in Technology
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
210
組織におけるCCoEの役割とAWS活用事例
nrinetcom
PRO
4
120
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
500
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
11k
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
120
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
620
偏光画像処理ライブラリを作った話
elerac
1
170
OPENLOGI Company Profile for engineer
hr01
1
20k
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
7
650
AWSを活用したIoTにおけるセキュリティ対策のご紹介
kwskyk
0
340
サイト信頼性エンジニアリングとAmazon Web Services / SRE and AWS
ymotongpoo
7
1.4k
CDKでカスタムランタイムを作成して、Lambdaをnode.js23+TypeScriptで動かしてみた
smt7174
2
110
Featured
See All Featured
Music & Morning Musume
bryan
46
6.4k
Become a Pro
speakerdeck
PRO
26
5.2k
Unsuck your backbone
ammeep
669
57k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Speed Design
sergeychernyshev
27
810
How to Ace a Technical Interview
jacobian
276
23k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Typedesign – Prime Four
hannesfritz
40
2.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
KATA
mclloyd
29
14k
Transcript
Launchableで始める テスト実行効率化 2022/03/15 Launchable Inc. shibui yusuke
shibui yusuke • いろいろ → Launchable(いまここ) • MLOpsとかいろいろエンジニア • もともとクラウド基盤の開発、運用
• ここ6年くらいMLOpsとバックエンドと インフラとたまにデータ分析と Androidで仕事 • Github: @shibuiwilliam • FB: yusuke.shibui • Meety: https://meety.net/matches/OPJgijxiEMHE cat : 0.55 dog: 0.45 human : 0.70 gorilla : 0.30 物体検知 2 物体検知
猫が物欲しそうな表情をしています。 3 1. 餌を上げる 2. 遊ぶ 3. 撫でる 4. ほっとく
A. 全部試して反応をみる B. 経験から可能性の 高いものを選ぶ 答えはLTの最後で!
CI/CDの次へ 4 テストを書く テストを自動実行する 必要なテストを実行する
5 – エンジニアの声 コードを1行変えただけなのに テストをすべて実行しないと マージできない・・・。 “ “
6
Predictive test selection by machine learning 7 学習 推論 教師データ
実行するテスト Tests Test results Tests Test pass/fail probability Feature engineering Model training Evaluation Model serving Deploy judgement
Launchableの仕組み 8 Launchable git push CI/CD Collect tests Important and
effective tests Analyse and filter tests Test records
Launchableの仕組み 9 Launchable Analyse and filter tests Test records ML
テスト実行の課題 時間の課題 全テスト実行時間を短縮したい ▶ 並列実行、リソース追加・・・ ▶ 失敗しやすいテストを優先して実行 10 安定性の課題 同一コミットでもランダムに失敗するテスト
(Flaky test) ▶ Flakinessを評価し修正可能なテストを 明確化
実行する必要のあるテストを並び替え 11 Low Medium High T8 T4 T3 T6 T2
T5 T7 T1 Time to First Failure (TTFF) 失敗する可能性の高い テストを優先して実行する ように並び替えることで テスト実行を効率化
まとめ ▶ 機械学習による実行すべきテストのフィルタリング ▶ テストの失敗が判明するまでのテスト実行時間を評価 ▶ Flakinessによる直すべきテストの明確化 12 「盗んできたおやつを 開けられなくて
悲しい顔をしていた」 が正解
Thank you! 13