カテゴリから探す
Geekly
コラム
技術・
テクノロジー
職種・
ポジション
Web・
ゲーム
転職準備
転職活動
  1. HOME
  2. Geekly Media
  3. 職種・ポジション
  4. 【徹底比較!】QA vs テスター!それらの仕事内容から求められるスキルまで、両者の違いを解説します。
  • 職種・ポジション

【徹底比較!】QA vs テスター!それらの仕事内容から求められるスキルまで、両者の違いを解説します。

ITサービスにおいても高い品質が求められるようになりました。ソフトウェアの品質といえば、バグを無くすためにテスターが活躍していましたが、セキュリティなども含めた全体的な品質保証が必要になったのです。そして今、QAが注目されています。そこで今回は、QAとテスターの違いを、仕事内容やスキルといった観点から解説します。

 

QAとは

 

QAとは「Quality Assuracne」の略称で、品質保証を意味します。また、エンジニアとしては、ITサービスやソフトウェアといった成果物の品質を保証するエンジニアを指す名称です。

QAは、バグが無いことだけを保証するのではなく、ソフトウェアなどにおける開発プロセスやテスト工程、テスト結果の分析、顧客へのサービスなど、成果物に関わる全ての品質保証を担います

ただし、社内のエンジニアポジションとして明確に「QA」という名称を示している企業は少ないかもしれません。テストエンジニアという職種がQAの業務を含む場合もあるからです。これが、QAとテスターの違いが明確に意識できない原因になっています。

QAの重要さが認知されてきたのも近年ですので、掲載されている求人でもQAという名称が使われていない場合も多いのではないでしょうか。

その場合は、「テストエンジニア」や「品質管理」といった文言で検索することで、QAの業務を含む職種を見つけることができるはずです。

 

テスターとは

 

 

テスターとは、システムにおけるテスト項目を実施し、バグがあれば報告する業務を専門とします。

テストには単体テストや結合テスト、総合テストといった段階で、テストエンジニアが作成したテスト項目書をもとに、テストを実行してきます。

主な成果は“バグをなくすこと”です。システム規模が大きければそれだけ多数の項目を検証しなければなりませんし、途中でバグがあった場合には”再現性“を正確にトレースしなければなりません。バグの改修が終われば、もう一度テストを行います。

非常に根気の必要な作業ですが、製品として通用する品質レベルまで上げるためには絶対に必要な工程です。

 

QAとテスターの仕事内容の違い

 

 

QAとテスターの仕事内容が明確に分類できないという人もいます。それは、明確に業務内容が分かれていない企業も多いからです。QAに注目が集まる前は、そのほとんどをテストエンジニアが行なっていました。そして、テストエンジニアとテスターの違いすら意識できない環境も多かったのです。

QAとテスターの仕事内容の違いを簡単に表現すれば以下のようになります。

 

QA:完成した商品が実際の運用に耐えられる品質であることを保証する

テスター:完成を目指す商品の細かな不具合を見つけフィードバックする

 

順番としては、テスターが各工程のテストを実施し、バグのない製品をQAが実運用に近い環境で品質を保証するという流れです。もちろん、テスト設計書の品質に関してもQAが監督し、テスト項目の質もQAが担保します。

 

QAは品質保証

 

 

QAは、ソフトウェアなどの製品の品質保証をするエンジニアを指します。品質を保証するためには、製品が作られる工程もしっかりと監督する必要があります。ですので、品質計画という工程では、テスト設計書が目標とする品質を達成するために適していることも保証する立場にあります。

QAにおいて行うテストは、主に完成した製品の”品質“を試すものです。ですので、納品するお客様の運用環境と同じ条件下で業務に沿ったテストを行います。それは、仕様通りの動作であったり耐久性であったり、あるいはセキュリティレベルの品質を確かめます。

それぞれのテストを経て、品質を保証するのがQAなのです。

 

テスターはテストケースの実施

 

 

テスターは、テストエンジニアが作成し、QAが監督したテスト仕様書を元に作られたテストケースを、項目ごとに実施していきます。

その業務には、単体テストや結合テスト、総合テストまでが含まれ、仕様通りの結果にならないバグを発見した場合にフィードバックします。

テスターはそれら工程を繰り返すことで、製品の質を上げていくポジションです。

ソフトウェアを含むITシステムには、必ずバグがありますので、テスターは必要不可欠な存在なのです。

 

 

 

 

QAに求められるスキル

 

 

品質保証は製品を世に送り出す上で非常に重要なものです。ユーザーが製品を扱った際にクオリティの低さを感じれば“使えない”という評価になります。また、ただ評価が低いだけではなく、その製品に関連して引き起こされるセキュリティ状の問題や、既存サービスとの機能競合による不具合につながってしまう可能性もあるのです。

QAは、製品だけでなく、製品を利用する環境も把握して品質に気を使わなければなりません。そこで求められるスキルには以下のようなものが挙げられます。

 

・ユーザー視点に立つスキル

・コミュニケーションスキル

・プログラミングに関するスキル

 

などです。

 

ユーザーの視点に立つスキル

 

製品のクオリティは、利用するユーザーが評価するものです。QAはユーザーが使った時にどのような評価になるかを想定して、製品の品質をコントロールしなければなりません。

製品が仕様通りに動作することは大前提ですが、ユーザーの利用方法によっては想定外のオペレーションが発生することもあるでしょう。

仕様通りの動作であっても、ユーザーの行動が考慮できなければ満足度は得られません。もちろん、不可能なオペレーションを解決するという意味ではありません。

しかし、製品の“扱われ方”をユーザーの視点に立って検証することは、品質保証の一環でもあるのです。

 

コミュニケーションスキル

 

 

QAが行うテストのひとつには、完成した製品を実際の動作環境でオペレーションがあります。この時、仕様通りに動かなければもちろん開発エンジニアへのフィードバックが起こりますが、ユーザーを意識した上での“使いにくさ”や”品質の低さ“が見られた場合にも、どのように改善するかをフィードバックしなければなりません。

その際に必要なのは、コミュニケーションスキルです。品質を向上するために”どのような点をどのように改善“するのかを伝えるには、エンジニア同士のコミュニケーションが最も重要なものとなります。

 

プログラミングスキル

 

QAはプログラミングスキルも必要です。実際にQAがソースコードを書くようなことはありませんが、ソースを読むことで気付けることも多いのです。

プログラミングの経験を豊富に持つことで、プログラムの組み方を見ただけでシステムの歪み(バグ)になりそうな部分を早期発見できることもあるでしょう。脆弱な部分は早く発見できるほど、開発を効率化できるのです。

 

QAが取得したい資格

 

 

QAエンジニアが取得しておきたい資格もチェックしておきましょう。ここでは、代表的な3つの資格を紹介します。

 

JSTQB認定テスト技術者資格

 

JSTQB認定テスト技術者資格は、世界的な「ISTQB」と連携したテスト技術者資格として認定を行なっています。

テスト技術力を向上させることで、ソフトウェア業界における技術力向上を目指している資格試験です。

 

ソフトウェア品質技術者資格

 

ソフトウェア品質技術者資格は、システム開発に関わる全てのエンジニアが「品質向上」についての知識を有することを目的にしています。

もちろんQAエンジニアにとっては、取得しておくべき資格試験です。

 

IT検証技術者認定試験

 

IT検証技術者認定試験は、テストエンジニアの技術を認定するための資格試験です。QAはもちろん、テストエンジニアとしての能力は必須の職種ですので、IT検証技術者認定試験も取得しておくことをおすすめします。

 

まとめ

 

 

QAとテスターの違いは、システムの検証レベルの違いです。また、テスターが行うテストケース自体の品質もQAの管理下にあるといっても過言ではないでしょう。

テスターはシステムが完成するまでの一つ一つの機能を検証し、QAはそれら全体を監督しながら、完成したシステムに対してより実践的な角度から検証をし、品質を保証するのです。

QAというポジションを目指す場合には、テスターやプログラマーからスタートすることで、QAに最低限必要なスキルを身につけることができます。QAとテスターの違いを意識して「QA」を目指すことで、必要な視点も身につけられるでしょう。

佐久森

Geekly Media
ライター

この記事が気に入ったら
シェアしよう!

  • twitter
  • facebook
3+

関連記事

求人数×IT業界での紹介実績数で、納得の転職をサポート。IT業界専門だからこそできる提案力を実感してみてください。