1人でやる必要はない。品質を高めるためのフルスタックとは
続いてモデレーターの早川氏は、「ソフトウェアテストにおけるフルスタックとは何か」という問いを、訳者3名に投げかけた。
一般的に「フルスタックエンジニア」は、「フロントエンドからバックエンドまでを1人で担う人」として理解されている。同様に「フルスタックテスティング」もフロントエンドからバックエンドまですべての技術スタックをテストする行為を指す。
早川氏は、本書が目指す「フルスタックテスティング」とは、単に複数の工程でテストを実施することではなく、多面的な視点から品質を捉えることだと強調する。フロントエンドやバックエンドといった分業の隙間で生じやすい見落としを全方位からのテストによって捕捉していくことこそが、本来の目的だという。
こうした基本的な整理を踏まえたうえで、訳者達は「フルスタック」をどのように捉えているのか。
最初に答えた松浦氏は、「10のテスト手法を覚えればフルスタックになる、という単純な話ではない」と留保する。重要なのは、各テスト手法やテスト対象に共通する考え方を理解し、それを異なる領域にも適用できることだという。
本書ではシフトレフトの考え方や、テストを開発プロセスに組み込む重要性が繰り返し語られる。モバイル、Web、アクセシビリティ、パフォーマンスと対象が変わっても、活用できるアプローチには共通部分がある。「CI/CDへの組み込みや自動化の活用といった共通項が見えてくる点こそが、本書を通じて得られるフルスタック的な視点だ」と語った。
続いて末村氏は、テスターとしての実感を交えながら、「引き出し」の重要性を説く。手動テストしかできない、あるいは機能テストなど特定の手法しか持たない状態では、テストできる範囲が著しく制限されてしまう。だからこそテストに関わる人間は、状況に応じて選択できる複数の手段(引き出し)が必要であり、本書が提示する10の手段は大いに「使える手」だとした。
対する堀氏は、本書を「異なる専門性を持つ人々が協業するための共通言語を与える書籍」だと捉える。自らの専門外にあたる章を読むことで、他の職種や領域の担当者が、どのような観点で品質を評価しているのかを理解できる。その相互理解こそが、チームとしての品質向上につながるというのが堀氏の見解だ。
議論はさらに、「フルスタックテスティングはエンジニア1人で実現できるのか」という問いへと展開した。堀氏は「ユーザーに価値を届けるためには、技術だけでなく、ビジネスサイドとの対話や調整が不可欠だ。そうした関係性をマネージできる人こそが、フルスタックに近い存在だ」と述べる。
これに対し末村氏は、「フルスタックテスティングエンジニアになるには、2つの道がある」と語った。広範なテスト領域に通じ、未知の分野であってもテストのたたき台を作れる人材になるか、あるいは特定分野を徹底的に極めるか、だ。その選択はキャリアの問題でもあり、どちらか一方だけが正解というわけではない。
松浦氏は、「そもそも、対象への深い理解なしにテストは成立しない」と総括。やはり、幅広い技術スタックが求められることを前提としつつ、最終的に差を分けるのは対象への深い専門性なのだ。
