Verisium Inc HOME | 会社概要 | お問い合わせ・サポート |
 
 
Verisium製品のデモ
Verisium製品のダウンロード
Verisium製品の導入事例
製品価格
spc
spc
spc
spc
icon テストツールとは?
spcicon テスト自働化ツールの選び方
icon 製品情報
icon テストサービス
icon よくあるご質問
icon ニュース・イベント
icon パートナー
spc
vTest詳細
vPerformer詳細
エクシズ株式会社(HEXYZ Inc.)
ホーム > テストツールとは?
テストツールとは?(1/2)
1
W1-H10
W25-H1 これまでテストは新人や派遣社員が担当してきた傾向があり、テスト工程にアサインされているエンジニアは、若手や派遣社員というどちらかというと経験やスキルの少ないエンジニアで、いわば「見習」の仕事という認識が強くありました。しかし欧米では、すでにテストエンジニアというと、上級エンジニアにカテゴライズされる職種であり、ツールスペシャリストや機能テストの自動化スペシャリスト、パフォーマンススペシャリストなど、テストの種類別にスペシャリストが設定されています。 ようやく最近になって、日本でもテストに対する見方・考え方が変化し、関心度が高くなり、これに伴いテスト自動化ツールは注目を集めております。

ここでは、テストツールの効果をメリットとデメリットを踏まえてお伝えします。

W10-H1
W1-H10

【Index】テストツールとは?

W25-H1 W10-H1
W1-H10

1. テストツールとは?

W25-H1 ソフトウェア開発において、テスト工程は最も重要な意味を持ちます。現在のソフトウェア開発を取り巻く環境として、「短期の開発期間」、「低予算」、「高品質」といった点が求められています。特にテストは全体の約40%をしめる「高価」な工程であり、品質を維持しつつも、効率化によりコストを抑えたいというニーズが高いことを受けて、特に関心が高いテーマです。この様な状況を打破する手法の一つとして、テストツールが注目されています。 W10-H1
W1-H10
知的財産権コンサルティングの株式会社マークアイ
W1-H10
W1-H10

2.テスト自動化のメリットとデメリットとは

W25-H1 自動化のメリット
@ 効率性の向上
まず、具体的なメリットですが、ひとつめは言うまでもなく「効率性の向上」です。自動化による効率は、複数回以上実施する必要があるテスト、または時間的コストがかかるテストへの適応が効率的です。自動化すると、夜間など勤務時間外に無人で実施することができるため、時間的メリットは非常に高くなります。

A 正確性の向上
テストの自動化では、何度繰り返しても同じ操作・同じ結果になるため、人的要因によるリスクを回避、人手による操作ミスなどを防ぐことができ、ブレのないテストが実施できます。また、バグが発見された場合は、自動化された同じスクリプトを実施するだけで再現させることができるので、バグ再現性向上にもつながります。さらに、テストツールのテスト結果レポートやテスト実施時の画面キャプチャは自動的に保存される為、期待通りの動きをしたエビデンスとすることや、テスト時の不正・ミスの抑制ともなります。

B 網羅性(品質)の向上
下図は、本来すべきテストの総量(項目数×時間)と、手動テストと自動化されたテストのそれぞれで網羅できる量を、グラフ化したものです。自動化により、テストを効率化することで、消化できるテストパターンの総量は確実に増加します。
W10-H1
W1-H10
知的財産権コンサルティングの株式会社マークアイ
W25-H1

自動化のデメリット
テスト自動化ツールとは、言葉を聞くととても便利そうですが、実際は導入するだけでなんでもテスト工程を省くことができる魔法のツールではありません。自動化するための設定を行うのはあくまでも人間であり、設定のノウハウを習得するのにも時間や費用が必要となります。

自動化スクリプト新規作成(修正)の工数
 事前のテストスクリプト作成には一定の工数がかかる
 画面レイアウト変更などの仕様変更ではテストスクリプトの修正が必要
自動化ツールの導入コスト
 ツールのライセンス料、保守料
 教育、習得コスト

ツールを導入したばかりのプロジェクトでは、自動化の作業が多く発生し、工数が増えることになります。たとえ、効率化ができなくても、長期的には、ツールに慣れ、テスト資産やナレッジが蓄積されていくことで、効率化は進んでいくはずです。
W10-H1
W1-H10
W1-H10

3.自動化に適したテスト、適さないテストとは

W25-H1 何を自動化し、何を自動化しないか?
自動化には初期コストが必ずかかります。自動化するメリットのないテストは自動化しても意味がありません。意味がないどころかマイナスの結果をもたらします。つまり、自動化する意味のあるテストだけを自動化し、その他は手動で行うことが必要です。手動のテストはテストの実行回数に比例して、実施コストが上昇しています。一方の自動テストは初期段階では、手動テストよりも実施コストが高いですが、実施回数が増えても実施コストは上昇しません。(実際にはメンテナンスコストがかかるので、階段のようなグラフが正しいかもしれません)
W10-H1
W1-H10
知的財産権コンサルティングの株式会社マークアイ
W25-H1 テスト自動化に適した(効果のある)テストだけを自動化し、その他は手動で実施することが重要!

すべてのテストケースを自動化することはできない
すべてのテストを自動化することはできません。仮にテストケースの100%をすべて自動化できたとしたら、それは本来やるべきテストをすべて消化できていない可能性が高いです。一般にテスト自動化の成功目安は30%といわれています。すべてのテストケースのうち、30%が自動化でき、効率化ができれば成功です。つまり、テストケースが1,000ケースあれば、30%の300ケースが自動化でき効率化できれば成功です。100%自動化したいと思ってはいけません。自動化ありき、ではなく、テストありきです。

実施すべきテストケースの中には、自動化が比較的容易で、かつ効果の大きいテストケースが全体の30%くらいは存在するものです。

自動化で効率化できるテストケースは、全体の30%。つまり、全体の30%の自動化メリットに見合った投資をすべき

自動化に適した(効果が大きい)テストとは
データ投入量の多い画面のテストも有効です。1回あたりの自動化効果が高いので、仮にテスト実施回数が2、3回であっても自動化の効果が出しやすいといえます。

 複数回以上実施する必要のあるテスト
 マルチ環境テスト
 仕様が確定しており、将来的に変更がない画面・機能のテスト
 定期的に行う基本動作確認テスト(システム移行など)
 一つの手順で複数の入力値の組合せがあるテスト
 ログインテスト、登録画面の入力チェックなど
 データ投入量の多い画面のテスト
 入力項目が多い登録系の画面など

テスト実施回数と1回あたりのデータ量がポイント!

自動化に適さない(効果がない)テスト 
言うまでもありませんが、仕様が確定していない画面のテスト、1、2回程度しか実施する必要のないテストに自働化は向きません。また、ユーザビリティテストや信頼性テストなどの非機能系テストを自動化することは困難です。工数、時間的コストが多いテストこそ、自動化のメリットがあります。

W10-H1
W1-H10
1
pagetop