テストエンジニアについて紹介します。
未経験でも参入しやすい職種になので、IT業界に興味がある人は要チェック!
はじめに
テストエンジニアの役割として明確に定義されているわけではなく、
会社によって「テストエンジニア」の解釈は違ってきます。
本サイトでは以下のように定義しています。
テスト活動を主に行うエンジニア。
テスト計画、テスト設計、テスト実施、テスト終了作業を主に担当する。
また、そのテスト活動の推進を行う。
テストエンジニアとは
サービスをリリースするためには、「一定の品質が担保されていること」が重要です。
品質を担保する手段は複数ありますが、「ソフトウェアテスト」をすることが一般的です。
開発者(プログラマー)が作ったアプリをテストすると不具合(バグ)が検知され、
それを修正をするというサイクルを回すことで品質を保証することが可能です。
不具合が検知されなかったとしても、テストをしたという事実が品質の担保へと繋がります。
自信と責任をもって「品質を担保する」ため、テスト活動を推進するのが「テストエンジニア」です!
テスト活動は主に
- テスト計画
- テスト設計
- テスト実施
- テスト終了作業
の4段階に分かれています。
具体的な作業内容
テスト活動の詳細を見ていきます。
テスト計画
その名の通り、テスト活動に必要な計画を立てるフェーズです。
テストの目的、テストの対象、テストのスケジュールなど、
テスト活動のために必要なことをまとめます。
内容をまとめたドキュメントを「テスト計画書」と呼びます。
どのようなテストをするかを考え、テスト計画書を作る作業が主となります。
テスト設計(実装)
作成されたテスト計画書をもとに、テスト実施の際に使用する「テスト項目書」を作成します。
具体的には、テスト観点やテスト手順、テスト方法を考え、Excelやスプレッドシートなどにその項目をまとめていきます。
そのまとまったものはテスト項目書やテストケースなどと呼ばれ、実際にテストする時に使用します。
補足ですが、JSTQB*1 では設計のあとに実装と呼ばれる作業が定義されていますが、実務では設計と実装をあわせて行うことも多いので、本サイトでは2つを合わせてテスト設計と定義しています。
*1 資格。また、テスト技術者の資格認定制度のこと
テスト実施
作成されたテスト項目書を使用し、テスト実施を行います。
項目書に記載されている前提条件、操作手順、テスト用のデータなどを確認し、
ソフトウェアが期待通りに動くかを確認します。
会社によっては「検証」「試験」とも呼ばれます。
テスト実施は品質担保の活動で最も行われる手法で、この作業を専任で行う人達を「テスター」と呼びます。
不具合起票
テストの実施中に不具合が発生した場合、不具合起票を行います。
具体的な不具合の詳細、どういう操作を行ったら、不具合が発生するのか。
など、不具合の情報を整理してドキュメントにします。
ドキュメントにした不具合情報は開発者の手に渡り、それを元に開発者はソフトウェアの修正を行います。
不具合ドキュメントの管理方法については会社によって様々ですが、BTS(バグトラッキングシステム)と呼ばれるツールを使ったり、スプレッドシートやExcelで管理している所が多いです。
テスト終了作業
一連のテスト作業が終わったら、終了作業を行います。
使用したドキュメントを整理したり、発生した不具合の整理、
テスト活動の振り返りや不具合の振り返り(分析)を行います。
この終了作業を経て、次のテスト活動を改善していきます。
おわりに
以上がテストエンジニアの主な業務内容でした。
テストエンジニアは自身がテストをする、つまりテスターとして業務を行う場合も多いです。
つまり、テスターからレベルアップした人をテストエンジニアと呼んでも差し支えありません。
もちろん、これはあくまで一般的で表面的な内容です。
実務では細かな業務もたくさんあります。
テストエンジニアはIT業界未経験でも比較的参入しやすい職種でもあるため、
もし興味がある方は検討してみてください。
また、テストエンジニアを極めた先にはなにがあるのか?
その1つの道としてQAエンジニアが存在しており以下の記事で紹介します。