Slide 1

Slide 1 text

意外とカンタン!? テストコードの改善から 始めるシステム開発の効率化 開発×テスト LT会 #devtestlt | 2021/8/25 | @omokawa_yasu キーワードは「読みやすさ」 1

Slide 2

Slide 2 text

自己紹介 2

Slide 3

Slide 3 text

3 副業でキャリアカウンセラーしてます。 興味があればTwitterから連絡ください!

Slide 4

Slide 4 text

本題 4

Slide 5

Slide 5 text

こんなことありませんか? 5

Slide 6

Slide 6 text

テストやっててつらいこと 6 ● 考慮漏れしたテストケースで不具合を発見できない ● テスト用のドキュメントをいちいち作成/更新するのが面倒

Slide 7

Slide 7 text

テスト精度もテスト効率も 悪くなってテンションが下 がりがち 7 この状態が続くと、

Slide 8

Slide 8 text

8 読みやすいテストコードで 改善を試みました! ※ 今回はRSpecを使いました

Slide 9

Slide 9 text

今回取り組んだ内容 9 ● テストコードは適切にケース分けする ● あえてDRYをやめ、ベタ書きする

Slide 10

Slide 10 text

適切にケース分けする 10 見やすくなり、気づきが増える ● 「Cの場合はどうなる?」 ● 「Bのテスト数は適切か?」 it 'Aのときは○○すること' it 'Aのときは△△しないこと' it 'Bのときは□□すること' context 'Aの場合' do it '○○すること' it '△△しないこと' end context 'Bの場合' do it '□□すること' end

Slide 11

Slide 11 text

あえてDRYをやめ、ベタ書きする 11 関数定義を調べる必要がなくなり、テ ストコードだけ読めば意味がわかる expect(response.message).to eq t('errors.data_not_found') expect(response.message).to eq 'データが見つかりません'

Slide 12

Slide 12 text

これらの取り組みを続けてよかったこと 12 ● エンジニア ○ テストケースの考慮漏れに気づきやすくなった ● テスター ○ テスト用のドキュメントを作成/更新する手間が削減された

Slide 13

Slide 13 text

テスターがテストコードを書 き、受け入れテストを実施 する 今回の取り組みを発展させたら出来るかもしれないと思ってること 13

Slide 14

Slide 14 text

ソフトウェアの品質を高め るために、読みやすいテス トコードから始めよう! 14 まとめ

Slide 15

Slide 15 text

ご清聴ありがとうございました! 15