この記事はレコチョク Advent Calendar 2021の23日目の記事です。
自己紹介
株式会社レコチョクでQAを担当している清崎(きよさき)と申します。
社内では独立したQAチームが組織横断として存在しており、自社サービス、toB向け、toC向けと展開しているサービスに対して、ビジネスチーム/開発チームとQAチームが協力しながらテストを実施しております。
はじめに
とあるアプリのスクラム開発へQAとして参画したとき、どのようなテストを実施したのかその経験を紹介いたします。 本投稿では Gherkin記法を中心に説明しており、自動テストに関する部分は割愛してます。
状況
自身はスクラム開発やアジャイルQAとしての経験もなく、どのようなテストを行えばいいのか正直ゼロから考えるという状況。 今まで経験した伝統的なプロジェクト開発手法とは異なり未知の部分も多く、短期間で品質保証をどう取りかかればいいか検討することになった。 これまでのQAはいわゆる開発後半のテストフェーズで実施を行っており、開発がアジャイルであっても後半にQAが入るということしか経験がない。
プロセス
- 1スプリント1週間のスクラム開発
- POが作成したプロダクトバックログをもとに、開発チームがスプリント期間内の計画を立てスプリントバックログを作成する QAは開発と並走してテストシナリオを作成してテストを実行する
- 各スプリントのスプリントレビューで、実際の動くアプリを触って受入基準を満たしているか確認する
取りかかる前に整理したこと
プロダクトバックログの内容は理解したが、どう設計して、いつテストすればいい?
- 1.どう設計する? プロダクトバックログの内容をもとに、システムの振る舞いや期待値を予測してテストの設計を実施したいため、 ビヘイビア駆動開発 (BDD)の考え方を取り入れることにしました。 参考にしたのは「ISTQBシラバス アジャイルテスト担当者」のP.28の「ビヘイビア駆動開発」です。
2.いつテストする? 開発と同タイミングでQAも動かないとスクラムの意味がないため、コーディングと同時にテスト設計を実施して、スプリント内でテスト実行を取り組めるようプロセスを整理。
テスト設計について
テスト設計は「Gherkin記法」を採用 Gherkin記法とはCucumberやTurnipで採用されているテスト記述言語フォーマットの1つで「こういう状態のとき、こういう動作を行えば、こうなることが期待される」という形式で記述していくものであり、構文がとにかくシンプルで平易な書き方になるので、技術者以外でも理解しやすくコミュニケーションが取りやすくなります。
清崎康史
レコチョクでサービス立ち上げから運用までさまざまな経験を経て、最近ではプロダクト品質と向き合い、日々奮闘中です。