Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

手動テストからロードテストまで、VSTTでテストフェーズを効率化する

Visual Studio 2005 Team Systemを使ってみよう - 第4回

  • LINEで送る
  • このエントリーをはてなブックマークに追加

Visual Studio 2005 Team Systemのエディションの一つである、Visual Studio 2005 Team Edition for Software Testersに用意されているアプリケーションのテストを支援する機能にはどんな機能が用意されているのかを一つ一つ見ていきます。これらの機能を理解することで、Visual Studio 2005 Team Edition for Software Testersがどのような時に利用できるものなのかを理解することを目標としています。

目次

はじめに

 Visual Studio 2005 Team System(以下、VSTS)がリリースされ、Visual Studioのターゲットは開発者の枠を飛び越えることになりました。これはプロジェクトマネージャーからテスターまでを包括的にカバーし、チーム開発を強力に支援する製品としてリリースされましたが、まだまだ浸透していないように思います。今回は、VSTSのうち、テスト担当者向けにリリースされているVisual Studio 2005 Team Edition for Software Testers(以下、VSTT)に用意されているテスト機能について、それぞれの概要を紹介します。

対象読者

  • .NET Frameworkを利用した開発プロジェクトに携わっている人
  • Visual Studio 2005 Team Systemに興味がある人

必要な環境と準備

 特にありません。

VSTTに用意された機能

 VSTTには、テストの作成や編集、テストの実行、テストの管理といったアプリケーションに対してさまざまなテストを行うための、以下の機能が用意されています。

  • 単体テスト
    Visual Studio 2005 Team Edition for Software Developers(VSTD)に用意されている単体テスト機能と同様のもの。
     
  • Webテスト
    Webアプリケーションの操作をロギングし、同様の処理を繰り返し試験するための機能。
     
  • ロードテスト
    Webテストで作成したシナリオなどをもとに、Webアプリケーションに負荷をかけてレスポンスなどを試験するための機能。
     
  • 手動テスト
    Wordやテキストファイルを登録し、テストの成否を管理するための機能。
     
  • 汎用テスト
    VSTTでは実行できない例えばNUnitなどのテストをVSTTから呼び出し、実行結果の成否を管理するための機能。
     
  • 順序指定テスト
    VSTTで作成したすべてのテストをまとめ上げて指定した順番どおりに実行する機能。
     
  • テストマネージャ
    1つ1つのテストを意味のある論理的な単位にまとめ上げて、その単位でテストを実行することができるようにするための機能。
     

 VSTTにはテストを支援するための実にさまざまな機能が用意されていますが、WebテストだけはWebアプリケーションにしか利用することができません。ですが、その他の機能はすべてのアプリケーションで利用可能です。それではさっそく、VSTTに用意されたそれぞれの機能がどのようなものであるか、実際にみていきたいと思います。なお本稿では、単体テスト、Webテスト、ロードテスト、テストマネージャについて重点的に説明し、それ以外の機能はまとめて紹介します。

NUnit
 .NET Frameworkを利用して開発されたソースコードをメソッド単位で単体テストを行うための機能を提供するオープンソースのツール。
 

単体テスト

 VSTTに用意されている単体テスト機能は、基本的にはVSTDに用意されている単体テスト機能と同様です。テストコードの雛型の自動生成機能やプライベートアクセッサの生成機能、単体テストの実行に合わせたコードカバレッジデータの収集機能などはVSTDと同様に使用することができます(これらの内容についてはシリーズ第3回の記事をご覧ください)。

 しかし、VSTSのエディションにおける考え方から推測すると、VSTTがVSTDの単体テスト機能と同様の機能が使えると考えるのではなく、VSTDがVSTTに用意されている単体テスト機能のうち、上記に挙げたような機能が使えるようになっていると考えるべきかもしれません。それを証明するわけではありませんが、VSTTには、VSTDにはない単体テスト機能として、コードカバレッジデータのマージ機能が用意されています。

図1 単体テストのコードカバレッジ結果1
図1 単体テストのコードカバレッジ結果1
図2 単体テストのコードカバレッジ結果2
図2 単体テストのコードカバレッジ結果2
図3 図1と図2の結果をマージしたカバレッジデータ
図3 図1と図2の結果をマージしたカバレッジデータ

 図1、図2は同じクラスの異なるメソッドに別々のタイミングで行われた単体テストのコードカバレッジデータをあらわしています。図3ではこれらのデータをマージして1つの結果として参照できていることをあらわしています。

 複数回にわたって単体テストを実行することはよくあることだと思いますがこのようなときでも、必要なデータのみを集めてコードカバレッジデータをマージすることで、異なるテストによって得られた結果から全体のテスト状況を確認することができるようになります。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

  • WINGSプロジェクト りばてぃ/FUJIKO/ナオキ(リバティ, フジコ, ナオキ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

バックナンバー

連載:Visual Studio 2005 Team Systemを使ってみよう
All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5