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
150
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
440
LLMで推論するライブラリを整理する
shibuiwilliam
5
1.3k
生成AIの研究開発を事業につなげる データ、仕組み、コミュニケーション
shibuiwilliam
1
79
デプロイして本番システムで使うことから考えるAI
shibuiwilliam
2
620
今日からRAGを 始めることを考える
shibuiwilliam
2
1.6k
2024年生成AI新年会登壇資料
shibuiwilliam
0
320
Creative as Software Engineering
shibuiwilliam
2
640
Kubernetesクラスターを引き継ぐ技術
shibuiwilliam
3
340
機械学習システム構築実践ガイド
shibuiwilliam
1
910
Other Decks in Technology
See All in Technology
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
240
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
400
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
680
AndroidデバイスにFTPサーバを建立する
e10dokup
0
250
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
230
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
720
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5.2k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
16
7k
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
280
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
100
株式会社EventHub・エンジニア採用資料
eventhub
0
4.3k
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
210
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
How to Ace a Technical Interview
jacobian
276
23k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Statistics for Hackers
jakevdp
797
220k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.4k
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