不具合からの脱却!テスト自動化ツール研究

この記事をtweetする このエントリーをはてなブックマークに追加

製品の基礎をきちんと理解! IT製品解体新書

不具合からの脱却!テスト自動化ツール研究

2008/07/14


 Webシステムの品質に対する意識は高まってきているが、十分なテストの実施はそう容易なことではない。また、ソフトウェアは社会生活の中に奥深く入り込むようになったことから、その不具合がもたらす社会的・経済的損失は深刻さを増すばかりだ。こうした背景のもと、最近の開発プロジェクトではテスト工程を分業することが重要視されるようになり、ソフトウェアテストの自動化ツール効果的な利用に注目が集まるようになってきた。そこで今回はソフトウェアテストの自動化ツールにスポットを当てその基本から最新動向までをわかりやすく解説する。また、「IT製品選び方ガイド」ではテスト自動化ツール選びの視点を解説しているので是非ご参照いただきたい。

テスト自動化ツール

※「テスト自動化ツール/不具合からの脱却!テスト自動化ツール研究」の記事を一部ご紹介します。会員登録を行い、 ログインすると、「テスト自動化ツール/不具合からの脱却!テスト自動化ツール研究」の記事全文がお読みいただけます。

会員登録はこちら(無料)

テスト自動化ツールの選び方ガイドへ


1

テスト自動化ツールを解体しよう!

1-1

まず「ソフトウェアテスト」の世界を理解しよう!

 ソフトウェア開発の世界では、プログラムの誤りを取り除くためにテストとデバッグが実施されているが、まず両者の違いから確認しよう。まず、テストとは、プログラムの誤り(バグ)を発見するための作業のことで、プログラマだけでなくテストエンジニアやそのプログラムの利用者などにより、ソフトウェア開発プロセス全体を通して実施される(図1)。言い換えると、ソフトウェアテストとはそのシステムの品質保証を支援する作業全体を指す。
 一方、デバッグはテストで発見されたバグを取り除く作業のことで、開発者がコーディングを変更して指摘された問題を解決することを指す。従って、テストでバグを発見した場合、プログラマがそのバグを再現させながらどこに問題があるかを迅速に解決できるように、できるだけわかりやすくテスト結果を報告する必要がある。

図1 ソフトウェア開発プロセス全体の中でのテストの位置づけ
図1 ソフトウェア開発プロセス全体の中でのテストの位置づけ
一般的に開発フェーズとテストフェーズの関係はV字モデルで表現される。
資料提供:NTTデータ
■テスト工程におけるテスト分類

 図1では単体テストや結合テストといった用語が登場しているが、ソフトウェアテストではいろいろなテスト名が登場してくるので、テストを経験したことのない人にとってはその位置関係が分かりにくい。そこで、最初に図1と図2の内容をしっかり把握すると良いだろう。

図2 テスト工程の定義
図2 テスト工程の定義
単体テストからシステムテストまで、それぞれ機能テストが実施される。
資料提供:NTTデータ

コーディング
 コーディング段階では、プログラムコードが論理的に正しいかどうかを調べる静的解析が実施される。この静的解析によって複雑度や使用されているアルゴリズム、データフローなどを分析できる。人による静的解析とツールによる静的解析がある。

単体テスト
 単体テストとは、モジュールなど個々のプログラム(ユニット)が決められた仕様を満たしているかどうかを確認するテストだ。参考までに単体テストのプロセスの一例を図3に紹介する。ここで紹介している「JUnit」とはJava用のオープンソースの単体テストツールで、オープンソースで提供されているIDE(統合開発環境)「Eclipse」にも含まれている。テストケースの抽出については、プログラムの内部構造やロジックの流れを理解しながらテストする「ホワイトボックステスト」とプログラムの中身は考慮せずに入力に対して正しい出力が得られるかどうかをテストする「ブラックボックステスト」を組み合わせることで抜けや漏れを極力減らすことが可能だ。

結合テスト・システムテスト
 単体テストが完了すると、次は結合テストが行われる。ここでは2つ以上のモジュールを組み合わせた場合、モジュール間でデータのやり取りが仕様通りになっているかなどがチェックされる。
 最後に、システムテストを行い、システム全体として機能要件を満足しているかどうかを検証する。ここでは、ほかのアプリケーションやハードウェアとの連携なども総合的に評価される。システムテストではすべてのプログラムがテストされる。

…この記事の続きは、会員限定です。  会員登録はこちら(無料)

続きを読むには…
会員登録いただくと自動的にこの記事に戻り、続きが読めます。

会員登録(無料)・ログイン

このページの先頭へ

テスト自動化ツール/不具合からの脱却!テスト自動化ツール研究」関連の情報を、チョイスしてお届けします

※キーマンズネット内の「テスト自動化ツール」関連情報をランダムに表示しています。

テスト自動化ツール」関連の特集


ソフトウェアが社会生活の中に奥深く入り込むようになり、重要視されるようになった“テスト”。今、開発プ…



ちゃんと見積ったはずのプロジェクト、気づけば“赤字”の憂き目に・・・赤字プロジェクト転落を回避するた…



ソースコードなど開発関連の膨大な電子化情報を分析する新たなマイニング手法「MRS」とは?バグ予測やコ…


「テストツール」関連の特集


2006年度出荷金額が前年比6%増の17.3億円。2007年度は更に12.1%の伸びが予測される「負…



過去3年のシステムトラブルの原因、約6割が性能問題!?システム稼働後のトラブルで”負のコスト”を出さ…



大規模基幹システムのWeb化やJ-SOX法によるシステム刷新が追い風となり、市場拡大傾向にある「テス…


「開発」関連 製品レポート一覧

このページの先頭へ

テスト自動化ツール/ 不具合からの脱却!テスト自動化ツール研究」の記事を一部ご紹介しました。
会員登録を行い、ログインすると、「テスト自動化ツール/ 不具合からの脱却!テスト自動化ツール研究」の記事の続きがお読みいただけます。


Myリストへ 印刷用ページへ

この記事をtweetする このエントリーをはてなブックマークに追加


この記事に掲載している情報は、掲載日時点のものです。変更となる場合がございますのでご了承下さい。


ページ: 1 | 2


30002651


IT・IT製品TOP > 開発 > テストツール > テストツールのIT特集 > 特集詳細

このページの先頭へ

キーマンズネットとは

ページトップへ