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
既存プロダクトに後からテストコードを追加している話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yussak
April 17, 2025
0
51
既存プロダクトに後からテストコードを追加している話
yussak
April 17, 2025
Tweet
Share
More Decks by yussak
See All by yussak
Web エンジニアなのでブラウザを作ってみた!
yussak
0
48
レガシーコード改善のために取り組んでいること
yussak
0
30
筋トレ初心者向けアプリをAIに作ってもらった
yussak
0
18
めぐろLT #25 「私、これ自動化しました!」
yussak
0
22
2025年の抱負
yussak
0
58
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Balancing Empowerment & Direction
lara
5
880
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
310
Color Theory Basics | Prateek | Gurzu
gurzu
0
190
How to make the Groovebox
asonas
2
1.9k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
110
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
A Tale of Four Properties
chriscoyier
162
24k
What's in a price? How to price your products and services
michaelherold
247
13k
The Curse of the Amulet
leimatthew05
1
8.2k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
48
Transcript
既存プロダクトに後からテスト コードを追加している話 2025/04/17 渋谷でビール片手にLT会! #16 @yussak213
自己紹介 @yussak • 婚活業界の事業会社のWebエンジニア • エンジニア歴:3年目 • 趣味:ボードゲーム、将棋、狩野英孝
目次 • プロダクトの背景 • どうやっているのか • 結果 • 今後 •
まとめ
プロダクトの背景 • プロダクトは10年以上運用されており、規模、複雑度が高い • テストコードは最近増やす意識は出てきたが、まだ多くない
プロダクトの背景 • SQLでロジックがゴリゴリに書かれている機能がある • 1ファイルに1000行以上あるものも多い • そのようなファイルが200以上ある • ORMに移行したい思いは数年あるが、そのための行動が取れていない
現状を打開したい!
機能開発のスピードを上げられるよう リファクタリングしたい! しかしテストコードがないのでやりづらい!
SQLのテストを書こう 🔥
プロダクトの背景 • APIのテストコードは書こうという意識が出てきた→継続 • SQLは多くの部分で重要な部分を担っている→書きたい • 画面のテストは一旦手動でやったほうが早い→保留 →SQLのテストを増やそう🔥
どうやっているのか • シンプルそうなSQLファイルを1つ選んだ • 雑でもいいので、楽観的な正常系のみ書いている • ログを見て、見よう見まねでパラメータなどを作っている • Cursorなどにテストケースを考えてもらっている →完璧を目指さずテストを書き、まず完成を目指しています💪
どうやっているのか • ある程度テストは書けてきたが、どれくらいカバーできているのか? ◦ 条件分岐が入り組んでいるのでそれのカバーをどうやるかが自信が ない ◦ 自分がまだプロダクトに詳しくない →チーム内で話し合って仕様整理やテストケースなど決めていく予定🔥
現時点での結果 テストコードが10年以上なかった領域に最初のテストコードを書けた! 戦 う 準 備 ができた🔫
今後 • お手本となるテストコードを作る • それを元にテストを増やす • ORMに書き換える 負債解消!
まとめ • テストは後から書くのは大変なので、可能なら最初から書いたほうがいい • 最低限・楽観的なものでもテストがあると安心感がある テストを書いて戦っていきます🔥
ご清聴ありがとうございました!