[テスト] よいテスト技術者/QAエンジニアになるには
はじめに
この記事では、テスト技術者のスキルアップについてまとめました。
結論
0. 基礎
基礎的な知識が乏しいと十分なテスト設計を作成することが難しいです。
基礎的な知識 = 計算機科学、アルゴリズム、計算複雑性理論、グラフ理論、データ構造、テスト知識
また、テスト設計が出来ても網羅率の低いテストシナリオになる可能性があります。
なので、まずは基礎的な「コンピューターサイエンス」などの学習を行うことをすすめます。
1. 高品質なサービスにする
つぎに、目の前のアサインされているサービスの不具合を検出しPJとして成功させることが最優先です!
様々なテスト手法やテストツールを駆使し高品質なサービスにします。
2. 誰でもすぐにテストを実行できる環境作り
自分だけがテストを実行できる環境では、効率よく開発/運用することが出来ません。
テストを実行したくても様々なインストールや設定が必要になり1~2hも時間を使ってしまった!
それでは、本来の不具合を検出する時間を捻出することが出来ません。
たとえば、下記の記事のようにテスト専用の環境を作成し、即座に誰でもテストを実行できるようにするとかいいですね
3. テスト結果についての分析
分析を行い、今後のテストをよりよくします。
具体的には、
- 開発者が不具合を混入してしまった理由
- テスト技術者が不具合を見逃した理由
- テスト技術者が不具合を検出できた理由
「良かったこと」「悪かったこと」を客観的に観察し、
「良かったこと」は継続し、「悪かったこと」は再発防止策を考案します。
グラフ化やデータ分析を活用し、効率よく行います。
4. 今よりも「効率よく」「効果的に」「迅速的に」に不具合を検出する
ここまで到達すると一人前のテスト技術者/QAエンジニアになっていると思います。
現状に満足せず、今よりも「効率よく」「効果的に」「迅速的に」に不具合を検出するを常に意識し、最新のライブラリーやツールの情報収集や学習、検討を行う
また、自分の考え方に**「誤り」や「勘違い」がないのか?**を自問自答する
5. 教育
これまでの取り組みを十二分に達成ができたら、次は自分と同じレベルのテスト技術者を育成する番です。
「○○さんだからできた!」「○○さんがいないからできない。わからない」ではチームとして弱いです。
自分が不在でも他のメンバーで遂行できるように教育を行い、チームを強化します。
Discussion