リーダブルなテストコードについて考えよう~VeriServe Test Automation Talk No.3~
- yoshikiito
- 6856
- 12
- 0
- 0
昨日の勉強会学びをブログに書きました zenn.dev/mokamoto/artic… #vstat
2022-07-28 08:40:46テストをDRYに書きたくなるのは、プログラマなら誰もが一度は通る道。「ループを使ったらこんなに短くなった!」とか「shared_examplesを駆使してる俺、カッコイイ」みたいな気持ちよさはよくわかるのですが、数年後に泣きを見ます(経験者談) リーダブルテストコード / #vstat speakerdeck.com/jnchito/number…
2022-07-28 09:05:18メタな参考情報です。昨日の発表が面白かった人は、よかったらこちらもあわせてどうぞ〜。 #vstat 発表でうまく話すコツをまとめたブログ記事 blog.jnito.com/entry/2019/10/… Keynoteでいい感じのスライドを作るコツをまとめたブログ記事 blog.jnito.com/entry/2019/07/…
2022-07-28 09:19:27よく分からないけど、こういう風に書けるのか〜学びになったからヨシ!はやってしまいがち。気をつけよう。 / 他9件のコメント b.hatena.ne.jp/entry/s/speake… “リーダブルテストコード / #vstat” (229 users) htn.to/2vw46rTJEV
2022-07-28 09:19:43逆に練習するから上手になるのかも。ちなみに発表前に録画していたリハーサル動画の本数を数えたら全部で13本ありましたw #vstat twitter.com/eiko_takemura/… pic.twitter.com/nr7YiooFQO
2022-07-28 09:29:07私はプレゼン力のなさにかなりコンプレックスがあるけど、こんなに話が上手な人でも練習するんだなぁ..と反省。 twitter.com/jnchito/status…
2022-07-28 09:24:12そういえば昨日の #vstat でいくつか質問あったけど、テストは英語が慣れていない関係者で意図が伝わらないくらいなら日本語で書いた方がいいって話多数派だったな。 そりゃそうだと思うけど、日本語許容してるところって多いのかな?
2022-07-28 10:11:24テストコードは「プログラム」じゃやくて「ドキュメント」! リーダブルテストコード / #vstat - Speaker Deck speakerdeck.com/jnchito/number…
2022-07-28 11:43:43昨日の #vstat でパネルディスカッション用に事前に準備してたものがいくつかあり、せっかくなのでツイートしときます。 ツイートする内容は、事前にいただいていた質問の回答と、運営が予め想定していたパネルディスカッションのトピックです。
2022-07-28 12:10:10Q. リーダブルなテストコードの勉強方法は? A. 例えばTDDBCに参加してみるとか。 devtesting.jp/tddbc/ TDDの体験も重要だが、コードレビューを貰えるのが貴重。 自分がTAとして参加している場合は、今回の発表のようにテストコードやテストメソッド名についての指摘が多めになります。 #vstat
2022-07-28 12:12:17Q. テストコードのメンテナンスをするにあたってのリファクタリングの頻度はどれくらいか? A. 「さあ、リファクタリングをしよう」と思っていたら負け。 特にUnitテストの場合、常にリファクタリングして、テスト実行してる習慣になっていることが大事。 #vstat (続)
2022-07-28 12:13:31リファクタリングの頻度を学べる動画はいくつかあるが、TDDBC Online #1 でのt_wadaさんの基調講演( youtu.be/Q-FJ3XmFlT8?t=… )と、TDDBC Sendai Xのペアプロデモ( youtu.be/r0o54M0J850?t=… )はオススメ。 #vstat
2022-07-28 12:14:52Q. どれが非効率な自動テストなのかが分からない状態(自動化したテスト仕様とマッピングがない)の場合、何から管理すれば良いか。 A. まずは管理云々の前に、それぞれの自動テストが何をテストしたいものなのか明らかにするところからではないかと思う。 #vstat
2022-07-28 12:15:34Q. Parameterized Testsを実行するときのテストケースをリーダブルにし、それぞれのシナリオにおいて仕様を分かりやすく説明するようなテストケースを書くにはどのようにすれば良いでしょうか? A. 同じテストの意図のものだけでParameterized Testsでのケースをまとめることが大事 (続) #vstat
2022-07-28 12:16:55具体的なコードで言うと、こんな感じのParameterized Testsは止めましょうという話です。(テスト設計の結果をそのまま当てはめた例) #vstat pic.twitter.com/4J0NUKHB1t
2022-07-28 12:18:37また、発表資料の事例1の場合(speakerdeck.com/nihonbuson/tes…)仮に東北地方と関西地方で同じ送料500円だったとしても、東北地方と関西地方の都道府県をまとめて1つのケースにするのは良くないです。 テスト設計技法の言葉で言えば、同値分割法における同値クラスが何なのか考えてみるのが大事。 #vstat
2022-07-28 12:21:55Q. テストファイルの構造について。1つにまとめる?複数作る場合はどんなファイル構造? A. E2Eテストの場合、featureごとにまとめたい。 そこらへんのファイル構造については、『The BDD Books - Formulation』に案が載っているのでそちらも参考にしてください。現在、鋭意翻訳中です。 #vstat
2022-07-28 12:23:20用意してた回答はこんなとこですかねー。 当日いただいたQ&Aは後日回答できるかと。 (現在、どんな質問があったか把握してないので…) #vstat
2022-07-28 12:26:25最&高 リーダブルテストコード / #vstat - Speaker Deck speakerdeck.com/jnchito/number… pic.twitter.com/exKvQWXUuS
2022-07-28 12:30:41あ、イベント中に質問できなかったとしても、スライドに対しての質問があれば今からでも遠慮なくリプライくださいー #vstat speakerdeck.com/nihonbuson/tes…
2022-07-28 12:31:39個人的な見解としては、テストコードのDRY化を進めれば進めるほど、「仕様書として」わかりづらくなる。というわけで、テストコードはDRYじゃないほうがいいよね、と思いました。 >> リーダブルテストコード / #vstat speakerdeck.com/jnchito/number…
2022-07-28 12:48:03あと、昨日の #vstat の話は、鋭意翻訳中の『The BDD Books - Formulation』に書いてあるBRIEFの原則がテーマとしてマッチしそうなので、そちらも紹介しておきます。(というのを言おうと思っていたのに忘れてた) speakerdeck.com/nihonbuson/tes…
2022-07-28 14:48:02リーダブルテストコード / #vstat speakerdeck.com/jnchito/number… 「テストコードにおいて、過度なDRYは読みやすさの敵」 わかる。あとはどうやってDRYや「定数をインラインで書いてはいけない」の呪いを解いていくか
2022-07-28 16:33:49