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
33
既存プロダクトに後からテストコードを追加している話
yussak
April 17, 2025
Tweet
Share
More Decks by yussak
See All by yussak
筋トレ初心者向けアプリをAIに作ってもらった
yussak
0
11
めぐろLT #25 「私、これ自動化しました!」
yussak
0
13
2025年の抱負
yussak
0
42
Featured
See All Featured
Writing Fast Ruby
sferik
629
62k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Designing for Performance
lara
610
69k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
35
6.1k
Context Engineering - Making Every Token Count
addyosmani
6
250
4 Signs Your Business is Dying
shpigford
185
22k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
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に書き換える 負債解消!
まとめ • テストは後から書くのは大変なので、可能なら最初から書いたほうがいい • 最低限・楽観的なものでもテストがあると安心感がある テストを書いて戦っていきます🔥
ご清聴ありがとうございました!