こんにちは、新井とコザキです。 2024/06/22 - 2024/06/23の日程で WACATE2024 夏 〜テストケースには、必ず作った人の意図が存在する〜 (以下WACATE)が開催されました。弊社からは2名で参加しました。
この記事ではWACATEへ参加した感想についてお話します。また本記事で使用されている成果物の画像はグループの皆さんに公開して良いか事前に許可を取って掲載しております(グループ6の皆様ありがとうございます!!)
WACATEとは
そもそもWACATEとは何かについて説明します。WACATE公式サイトによると( https://wacate.jp/ )
WACATEとは、Workshop for Accelerating CApable Testing Engineers の略で、「内に秘めた可能性を持つテストエンジニアたちを加速させるためのワークショップ」と称し、テストに興味がある方向けのワークショップです。
参加のきっかけ
新井
スクラムによる開発を進めている開発者として、システムの設計や実装、自動テスト等を担当しています。日々の開発の中で、テストやシステムの品質について、より深く学びたくなったこと、およびテストに関する専門家(テストエンジニア、QAエンジニア)と関わる機会が少なかったので、議論や普段考えていることを知りたいので参加しました。
コザキ
普段の業務では、スクラムでテスト駆動開発を用いて開発し、テストコードを書いています。 日々の業務を通じて、良いテストコードとは何かを考えるうちに、テストや品質についてもっと学びたいと思うようになりました。そこでWACATEを通してテストについて学ぶことはもちろん、他の方とテスト技術について議論することで、より良い方法を知る良い機会だと考えました。また、QAエンジニアという職種にも興味があり、交流してみたいと思い、参加を決めました。
ワークショップについて
今回のWACATEでは、「テストケースには必ず作った人の意図が存在する」というテーマで、テスト実装からテスト分析へと遡るワークをグループで分かれて行いました。 テスト実装の成果物だけ(今回はテストケースの手順書のみ)という状況から、テスト設計やテスト分析の成果物を作成するという内容で楽しく手を動かしながらワークすることができました!具体的なワークの一覧と概要については、以下のリンクから確認できます。
wacate.jp
このワークでのコザキが参加したチームの最終的な成果物は以下の通りになりました。
ワークを通して学んだこと
ワークでは、既存のテストケースを元に、どのようなテストの設計意図があったのかを推測してテスト設計やテスト分析の成果物を再構築(リバース)する作業を行いました。 この過程で、テスト手順書から元の設計意図を完全に理解することの難しさを痛感し、ブロッコリーさんがクロージングでおっしゃっていた通り、これがアンチパターンだと実感しました。そのため、リバース作業を避けるためにも、きちんとテストプロセスに沿って成果物を作ることの大切さを再認識することができました。
また、テストケースの背後にある意図を明確に残すためには、テスト分析の成果物を残すことが重要だと感じました。特にそのことを実感したのが、テスト分析の成果物の有無による仕様変更に対するテストケース追加、修正のワークでした。成果物がない状態では、既存の仕様や細かい仕様が理解しないまま作業を行うので、自信を持って追加、修正を行うことができませんでした。一方、成果物がある状態では、テスト意図が構造的に整理されていたので以前よりも自信を持って追加、修正を行うことができ、仕様変更により生まれた曖昧な挙動についても整理しやくなりました。
これはテストに限った話ではなく、各プロセスの意図を理解し、自分の考えや意図を明確に残すことが必要だと今回のワークを通して学ぶことができ、普段の業務でも意識していきたいと思いました。
さらに、ワークの最後には発表の時間があり、各グループが今回のワークで得た気づきを共有しました。コザキが参加したチームでは以下のような気づきがあり、他のチームからも似たような課題に直面していることを聞いて、テストプロセスの理解とその重要性を改めて確認する有意義な経験となりました!
交流を通しての学び
WACATEはワークショップ以外にも交流を深めるきっかけが多数あります。分科会というテーマ別の議論をする会や、ランチ等のタイミングで雑談できました。個人的な内容も多かったので話せる範囲で新井が印象に残っているは、分科会の「1日目の疑問解決」のテーマです。
今回のワークショップは、全体的にテストプロセスのステップ毎に明確にスコープを区切ったワークの構成になっていました。それに対して、自分は1日目のワークで、今ある成果物を受け入れて考えるタイミングでも、飛躍して仕様の妥当性など、さまざまな可能性や状態を考えすぎてしまいました。分科会でブロッコリーさんとの会話で疑問を解決する中で、テストを記述する時に暗黙に行っているプロセスについて、テストプロセスというステップに分解して、それぞれの目的や成果物を意識することの便利さ、大切さについて理解しました。2日目の意図を知るためのテスト分析においては、そのステップの成果物と、前後のステップの対応関係の確認に集中することでき、より正確に作業ができたと思っています。 分解に関する話はブロッコリーさんの下記記事が参考になりました。 nihonbuson.hatenadiary.jp
このように、ワークだけでもなく分科会等の交流でも自分の疑問を解決できる機会を用意してあるのは素晴らしいと思いました。
社内に持ち帰ったこと
学びやモチベーションを加速させるため、忘れないうちに参加した二人で研修に対する振り返りを行いました。
研修が2日と長かったので、時系列ベースで各チームの差分や共通点、講演に対する感想等について書き出しています。この振り返りを経て、次のアクションとして、業務で具体的にモデリングの知見を生かす、チームで勉強時間枠を取る、参加者がWACATE研修の発表スライドのカラオケをするなど、チームに良い影響を与えうるアクションを出し、実行を始めています。
最後に
WACATE実行委員の皆様、そして一緒にグループワークやお話をしてくださった参加者の皆様、ありがとうございました。 参加する前は、他の人と積極的に話せるかどうか少し不安でしたが、WACATEには参加者間の会話を促すためのさまざまな仕掛けが用意されていて、とても助かりました。 ポジションペーパーを使った自己紹介で顔見知りが増え、ワークショップが終わるたびにグループ内の会話が増え、1日目の分科会が終わると、他グループの人とも話す機会が増え、 最終的にはみんなが積極的に発言している状況になり、本当にすごいと思いましたし、その熱意を感じることができました。 このブログ記事を書いていて改めて参加してよかったと思いました。 重ね重ねになりますが、ありがとうございました!
We are hiring!!
最後に、ブックウォーカーでは物理・電子・Web連載問わず漫画や本が好き、あるいは開発・テストやその品質に興味を持ちサービスに貢献したいと思っているエンジニアを募集しています。 ブックウォーカーでは社内外問わず研修への参加を業務の一環として行うことができ、スキル向上のための体制が整っております。
興味がありましたらぜひ下記採用情報ページより、まずはカジュアル面談のご応募お待ちしております。