Laravel バージョンアップと品質担保の話
by
yugkwmt
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
Laravel バージョンアップと 品質担保の話
Slide 2
Slide 2 text
自己紹介 ● 川又 由雅 ● Chat Dealerの開発に携わっています ● 業務で PHP(Laravel)を使用しています 2
Slide 3
Slide 3 text
バージョンアップを行う理由 3
Slide 4
Slide 4 text
バージョンアップを行う理由 ● Laravel 5.5 が 2020年8月末に EOL を迎える ● EOL を意識しつつ、LTS(Long-term-support)を集中的に使うルール としている ○ 5.6 ~ 5.8 は LTS ではなく、EOLを迎えている NG ○ 6.0 は LTS で EOL が2年後 OK 4
Slide 5
Slide 5 text
バージョンアップにかかる時間 5
Slide 6
Slide 6 text
バージョンアップにかかる時間 ● 公式アップグレードガイドに書かれている見積もり時間 ○ 5.5 → 5.6: 10分~30分 ○ 5.6 → 5.7:10分~15分 ○ 5.7 → 5.8:1時間 ○ 5.8 → 6.0:1時間 ● 5.5 から 6.0 まであっという間に終わるんじゃ?(期待) 6 合計2時間45分
Slide 7
Slide 7 text
バージョンアップにかかる時間 ● というわけにはいかなかった ● 実績:63時間 ● プロダクトの品質担保のため1日では終わらない 7
Slide 8
Slide 8 text
バージョンアップ手法 8
Slide 9
Slide 9 text
バージョンアップ手法 1. アップグレードガイド、GitHubを参照して変更点を確認 ○ Laravel 5.6 ~ 6.0 の各変更点を確認 ○ 品質担保のため、修正が必要な箇所を調査 9
Slide 10
Slide 10 text
バージョンアップ手法 2. バージョンを上げる ○ composer.json(パッケージを定義するためのファイル) の “laravel/framework” の修正を行う ■ "laravel/framework": “5.5", ⇒ "laravel/framework": “5.6", ○ “composer update” コマンドを実行する 10
Slide 11
Slide 11 text
バージョンアップ手法 参考:Laravel アップグレードガイド https://readouble.com/laravel/6.x/ja/upgrade.html 11
Slide 12
Slide 12 text
バージョンアップ手法 3. 1の調査をもとに、コードの修正を行う 4. 修正箇所の動作確認を行い、異常なければ次のバージョンに上げる ○ 異常があれば修正を行う ○ 例:Laravel 6.0 Carbon 1 → 2 へのアップグレード ■ 日付操作が正しく行えるか? 12
Slide 13
Slide 13 text
バージョンアップ手法 2 ~ 4 を Laravel5.6 から 6.0 まで繰り返し行う 5. Laravel 6.0 まで上げ切ったら最後に全機能のテストを行う ○ 一通り動かして動作不正がないか確認 ■ ユーザが行う全設定 ■ 全画面の表示 …etc 13
Slide 14
Slide 14 text
バージョンアップ手法 ● 公式アップグレードガイドに書かれている見積り時間:約2時間45分 ● 実績:63時間 ○ 変更点の調査、テスト仕様書作成:29時間 ○ バージョンアップ:2時間30分 ○ コード修正:7時間 ○ 修正箇所の動作確認:13時間 ○ 全機能テスト:11時間30分 14
Slide 15
Slide 15 text
バージョンアップ手法 ● なぜ段階的にバージョンアップ? ○ 「一気に上げると問題が生じた時に問題の切り分けがしづらい」という 課題 ● 事例をネットで検索 ○ 段階的にバージョンアップしてる記事が実際にあった。こちらを参考。 ○ https://tech.arms-soft.co.jp/entry/2019/08/28/090000 15
Slide 16
Slide 16 text
バージョンアップ手法 この手法でやってみて ○ 良かった点 ■ どのバージョンが原因でエラーが発生してるか把握しやすい ○ 良くなかった点 ■ 特になし 16
Slide 17
Slide 17 text
まとめ 17
Slide 18
Slide 18 text
まとめ ● バージョンアップを段階的に実行すると、どのバージョンが原因でエ ラーが発生しているのか把握しやすい ● プロダクトの品質担保のために泥臭い作業が必要となる 18