Webテストと手動テスト

WebアプリケーションやWindowsアプリケーションなどのユーザインターフェースのテスト実行は自動化したいものだと思います。Webフォームのテスト実行の記録と自動化は、VS2005 Team SystemのWebテストの機能によって満たされます。

VS2003のユーザインターフェースのテスト実行機能はApplication Center Testで行えましたが、記録されるスクリプトをカスタマイズしたい場合は、VBScriptを修正しなければならず、厄介でした。

しかしVS2005 Team SystemのWebテストでは記録されるスクリプトがVisual C#やVisual Basicであるため、効率よくカスタマイズすることができます。

Windowsフォームのテストの自動化については、手動テストという形で提供されます。この手動テストというのは、自動化が困難なテストの場合にテスト手順をドキュメント化してくれる機能です。Windowsフォームのテスト実行の自動化機能は提供されないことは残念ですが、開発環境にこういったドキュメントが組み込まれることで、スムーズな開発ができると考えます。

 

負荷テストとコードプロファイラ

システム構築において、非機能要件の1つである性能要求を満たしているかを確認することは重要であり、システムテストにおいて負荷テストやパフォーマンス測定を行えます。

VS2005 Team Systemはロードテストという機能で、負荷テストをサポートします。例えば、Webテストの機能を利用し、複数ユーザ実行として実行するというシナリオで負荷テストが行えます。ロードテストでは、同時ユーザ数やその増加数、ネットワーク速度といった条件設定を行い、CPUやネットワークなどのリソース消費状況やレスポンスタイムやスループットの測定が可能です。

また、メモリなどのリソースがボトルネックになったり、一部のプログラムの負荷により大幅に時間がかかったりすることは、システムに致命的な影響を与えアーキテクチャレベルでの変更が発生するような状況に陥ってしまうことにもつながります。

このような、パフォーマンス要求を満たしているかのテストは、VS2005 Team Systemのプロファイリング機能であるコードプロファイラが有効です。コードプロファイラは、アプリケーションの動作時間とパフォーマンスに関する情報を収集し、処理の遅い箇所を特定することが可能です。

 

テストケース管理

テストケースの管理やテストの進捗管理、不具合状況の管理などのプログラム開発の進捗状況やテスト状況を適宜把握し、判断・指示を迅速に行うことが必要です。VS2005 Team Systemではテストケース管理としてTest Case Managementという機能があります。

Test Case Managementは、チームへのテスト実施状況の報告や情報共有を開発環境と一体化した仕組みとして提供し、テストを効率よく管理/実施することを可能にします。

 

おわりに

テスト駆動の有効性およびVS2005 Team Systemのテスト機能の概略を述べましたが、なんといってもVisual Studioの開発生産性の高さにプラスして、テストの機能が十分に加わったことにより、効率のよい開発が期待できます。

旧バージョンのVS2003では、開発という点では高いパフォーマンスを提供していたもののテストツールとなるとIDE(統合開発環境)にテストツールが統合されておらず、開発者が自分でツールを探してVS2003にアドインして実行するという不便さがありました。

同様にVS2005単体には、テストをサポートするための、すべてのツールがそろっているわけではありません。また、VS2005に含まれるツールがテストを必ずしも十分に満たしてくれるというわけでもありません。

しかし、VS2005 Team Systemにおいては開発生産性に加え、テストツールが正式機能として搭載&機能アップされて、格段に開発がしやすくなりました。

次回以降は、実際にVS2005 Team Systemを利用する方法とその有効性を検証し、テストおよびテスト駆動をどのように支えてくれるのかを、より具体的に解説したいと思います。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30