$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
既存プロダクトに後からテストコードを追加している話
Search
yussak
April 17, 2025
0
34
既存プロダクトに後からテストコードを追加している話
yussak
April 17, 2025
Tweet
Share
More Decks by yussak
See All by yussak
レガシーコード改善のために取り組んでいること
yussak
0
6
筋トレ初心者向けアプリをAIに作ってもらった
yussak
0
14
めぐろLT #25 「私、これ自動化しました!」
yussak
0
14
2025年の抱負
yussak
0
46
Featured
See All Featured
Done Done
chrislema
186
16k
Become a Pro
speakerdeck
PRO
30
5.7k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Writing Fast Ruby
sferik
630
62k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Agile that works and the tools we love
rasmusluckow
331
21k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
A designer walks into a library…
pauljervisheath
210
24k
Optimizing for Happiness
mojombo
379
70k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
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に書き換える 負債解消!
まとめ • テストは後から書くのは大変なので、可能なら最初から書いたほうがいい • 最低限・楽観的なものでもテストがあると安心感がある テストを書いて戦っていきます🔥
ご清聴ありがとうございました!