ヨーロッパ最大規模のソフトウェアテストカンファレンス「EuroSTAR Conference 2018」がオランダのハーグで開催されました。この記事は「A Journey through Test Automation Patterns」の共同筆者でもあり、Test Automationのキャリアが15年を超えるというSeretta Gamba氏によるチュートリアル「Driving Lessons for Test Automators」のレポートです(執筆担当:米山允章)。
テスト自動化に取り組む方に向けた講座

このチュートリアルのコンセプトについて、氏は以下のように語っていました。
自動車を運転するためには、車にはタイヤがあり、ハンドルがあり……という知識のみでなく、運転自体のレッスンも必要です。同様に、テストを自動化していくのも、コード化できるだけが素晴らしいTest Automatorというわけではありません。
よって自動車の運転免許と同じように、このチュートリアルでは「Automatorのライセンス」取得に向けて、自動テストに関する事例やディスカッションを通して演習しながら学んでいきます。受講者は70名程で、テスト自動化の経験が二年以上ある方が大半でした。
Exercise 1:給紙ロボットを設計する
最初のExerciseでは「あるテーブルにあるフォーク、ナイフ、皿、カップをお客様のテーブルにセットしていくロボット」を想定して、ロボットを動かすためのコマンドと、その仕組みを考えます。

ポイントは「ロボットはどうやってスプーンやフォークを識別するのか」と「どうやってすべてのお客に1セットずつ配るのか」です。このお題に与えられた時間は15分です。
筆者がペアで組んだ方と作ったコマンドは以下のようになりました。
- スプーンやフォークが置かれているテーブルへと向かい、画像検索を使って並んでいるアイテムをチェックする
- スプーンがみつかったら、それをお客様Aのテーブルに届ける
- テーブルに届けたら「スプーンを届けたフラグ」を立てる
- お客様Aのデータベース情報をチェックし、まだ届けていないアイテムがあればそのアイテムを取りに行く
- 必要なアイテムが見つかったら、再度、お客様Aのテーブルにアイテムを届ける
戦略としては、スプーンやフォークの識別には画像判定を用いて、事前に登録しておいたスプーンの写真と比較し、一致度の高いアイテムを選定していく方法を考えました。「すべてのお客に1セットずつ配布」する部分は、データベースにお客ごとのフラグを用いることとしました。
その後、ペアのどちらかがロボットを演じながら、そのロボットが思考することなくそのコマンドに従って動いた場合に、期待通りの挙動になるかどうかを確認しました。実際にロボットになりきって動いてみると、途中で停止してしまうケースがたくさん見つかりました。
この記事は参考になりましたか?
- 「EuroSTAR 2018」レポート 連載記事一覧
-
- テスターは「まだ」死なない~テスターの武器となるTQEDやBDD【EuroSTAR 201...
- 先人の知恵から学ぶ~テストの自動化で失敗しないためには【EuroSTAR 2018】
- ビッグデータ、マイクロサービスにおけるテストの変化とは【EuroSTAR 2018】
- この記事の著者
-
EuroSTAR 2018レポートチーム(ユーロスター2018レポートチーム)
岡本 明 アクセンチュア株式会社 テクノロジーコンサルティング本部 シニアマネージャー 千葉真弓 アクセンチュア株式会社 テクノロジーコンサルティング本部 シニアマネージャー 藤原 史和 楽天株式会社 サービス品質保証グループ マネージャー 米山 允章 株式会社メルカリ QAエンジニア 藤原...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
