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
yussak
April 17, 2025
0
53
既存プロダクトに後からテストコードを追加している話
yussak
April 17, 2025
Tweet
Share
More Decks by yussak
See All by yussak
Web エンジニアなのでブラウザを作ってみた!
yussak
0
310
レガシーコード改善のために取り組んでいること
yussak
0
36
筋トレ初心者向けアプリをAIに作ってもらった
yussak
0
19
めぐろLT #25 「私、これ自動化しました!」
yussak
0
25
2025年の抱負
yussak
0
60
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
93
Test your architecture with Archunit
thirion
1
2.2k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
We Have a Design System, Now What?
morganepeng
55
8k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
67
37k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
68
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
980
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
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に書き換える 負債解消!
まとめ • テストは後から書くのは大変なので、可能なら最初から書いたほうがいい • 最低限・楽観的なものでもテストがあると安心感がある テストを書いて戦っていきます🔥
ご清聴ありがとうございました!