Azure Managed Service Column <Azure運用コラム>

テスト支援ツールAzure Test Plansとは?

Category: 入門編

2022.08.12

DevOpsを支援するAzure DevOpsサービスとともに解説します

近年、システム開発の環境もクラウド環境へシフトしています。クラウド環境ではリソースの調達が簡潔で素早くデプロイできるなど多くのメリットがあります。

このような環境において DevOps が改めて注目を集めています。 DevOps とは Development and Operationsの略語です。開発担当( Development )と運用担当( Operation )が連携しながら迅速に開発を進める開発手法です。

マイクロソフトは Azure サービスの一つとして Azure DevOps を提供しています。クラウド環境においてマイクロソフトが提唱するポリシーに基づき、システムの共同開発を支援するサービスです。

本記事では前提となる基礎知識と Azure DevOps サービスについて、そしてサービスにラインナップされている Azure Test Plans をピックアップして解説します。

1.DevOps とは

まずは前提となる DevOps について解説します。 DevOps のメリットは意見が衝突しがちな開発と運用の各チームで役割分担し共同作業を行うことで、問題点や修正箇所を迅速に抽出し、デプロイ、テスト、改修を素早く行うことができる点です。よって効率性、生産性が向上し、高品質なシステムや製品をより短納期で開発できるようになります。

1.1 ウォーターフォールモデルの開発手法との違い

開発手法として従来からよく用いられているのがウォーターフォールモデルと呼ばれる開発手法です。開発担当、運用担当といった役割や工程を明確に分離し、言葉通り「水が流れる」ように上流工程から下流工程に順次移行していく手法です。

ウォーターフォールモデルでは手戻りの工程や開発と運用のセクショナリズムにより衝突が発生するケースが多いとされ、開発工数が想定以上にコスト負担になるリスクがあると言われています。

しかしその反面、ウォーターフォールモデルは大まか段階における汎用的なフレームワークが成熟しているため、それぞれの段階で行うべき内容のベストプラクティスやナレッジとして情報も多く、進捗管理、品質管理が容易であるというメリットもあります。

1.2 アジャイル開発とは

DevOps という考え方が浸透し具体的な開発手法として誕生したのがアジャイル開発です。 Agile という言葉は日本語で「俊敏」を意味します。

アジャイルは要件の優先度に応じて小規模プロジェクトを複数立ち上げます。各プロジェクトの中で短い開発サイクルを繰り返し、最終的に各プログラムを統合した 1 つの成果物を完成させます。

たとえプロジェクト途中で要件の変更が発生しても影響が及ぶ範囲を最小限にできることから開発柔軟性を確保できる開発手法です。 DevOps の考え方で行われる開発モデルはアジャイルであることから、DevOps とアジャイルには親和性の高い相関関係があると言えます。

2. Azure が提供する DevOps を支援するサービスとは

DevOps の重要性が高まるにつれて、マイクロソフトは社内で培った 15 年以上のナレッジ、80,000 人を超えるマイクロソフトの社内ユーザーの利用実績、数千件以上のクライアント利用実績を持って Azure DevOps サービスをリリースました。

Azure DevOps とは Azure DevOps Services と Azure DevOps Server からなるサービスです。

Azure DevOps Services は開発ツールやコラボレーションツールをまとめて提供するクラウドホスティングサービスです。基本的にはプロジェクト管理のプラットフォームであり DevOps を支援する各種関連ツールが提供されています。

Azure DevOps Server は Azure DevOps Services のオンプレミス版です。タスク全体の自動化、リリース管理など、ソフトウェア開発プロジェクトを管理するのに必要な機能が提供されます。Azure DevOps は開発ライフサイクル全体に及ぶ以下のサービスから構成されています。

Azure上におけるDevOpsの構成・プロセスイメージ
<Azure 上における DevOps の構成・プロセスイメージ>

サービス名 説明
Azure Pipeline あらゆる言語、プラットフォーム、クラウドに対応した CI/CD 機能を利用し GitHub や任意の Git リポジトリに接続し、継続的にデプロイします。
https://azure.microsoft.com/ja-jp/services/devops/pipelines/
Azure Boards アジャイル、スクラム、かんばんプロセス、カレンダービュー、構成可能なダッシュボード、統合レポートのネイティブサポートが提供されます。
https://azure.microsoft.com/ja-jp/services/devops/boards/
Azure Artifacts コードを効率的に同じチーム内、組織全体、パブリックに共有できます。
https://azure.microsoft.com/ja-jp/services/devops/artifacts/
Azure Repos コードの管理に使用できるバージョン管理ツールのセットです。
https://azure.microsoft.com/ja-jp/services/devops/repos/
Azure Test Plans オールインワンの計画された探索的テストソリューションです。
https://azure.microsoft.com/ja-jp/services/devops/test-Plans/

3.Azure Test Plansとは

開発において従来は手動で行われていたテストをサポートするサービスです。デスクトップタイプのアプリケーションや Web タイプのアプリケーション両方のテストに対応しています。

このような一般的なテストは、テスト用に作成された手順書をもとに、テストを担当するテスター( Tester )と呼ばれる担当者が行います。 Azure Test Plans では、このテスト用の手順書を Azure 上で管理することができます。

3.1 Azure Test Plansで利用できるテスト種類

手動テスト

開発担当者やテスト担当者が作成した手動のテストケースをサポートします。複数のテスト手順をテストスイートとして保存し、作成、複製、実施結果の保存、再利用ができます。

ユーザーや利害関係者による受け入れテスト

手動テストを実際の利用者や利害関係者に受け入れテストとして共有することができます。そこで検出されたバグや改善要求事項など、フィードバックの送信まで Azure Test Plans で包括的に一貫して行うことが可能です。

探索的テスト

探索的テストのサポートツールが利用可能です。探索的テストは、テストケースを作成せずにその都度テストケースを考えながらアプリケーションを操作するテスト手法です。結果的に想定外の結果を有効活用することもできるため、アプリケーション全体の品質向上が期待できるテスト手法です。

3.2 Azure Test Plans の構成

Azure Test Plans の構成イメージ
<Azure Test Plans の構成イメージ>

図版出典:Microsoft 公式サイト

以下の構成に沿って手動テストの情報を管理します。以下の構成要素を持って効率的な開発テスト環境を実現しています。

Test Plans(テスト計画)

テスト計画として複数種類のテストを管理するために分類することが出来ます。 Test Plans によって主に管理されるのはモジュールやコンポーネントなどの細かいバージョン情報やリリースごとの管理などです。よって、アジャイル開発のように俊敏な開発環境において有効的な管理が可能となります。

Test Suite(テストスイート)

複数種類のテストケースを取りまとめる役割です。シナリオや機能毎にテストケースを取りまとめることで、より効果的なフィードバックと管理の効率化を目的としています。

Test Case(テストケース)

実施テストをケースとして管理します。このケースは手順として管理され、手順毎にテストと、テスト結果を記録することが可能です。

3.3 Azure Test Plansのメリット

任意のプラットフォームでテストできる

Test Plans Web ポータルを使用すると、サポートされている任意のブラウザーを使用して、すべての手動テスト機能にアクセスできるため、任意のプラットフォームでテストが可能になります。

多くの診断データを収集できる

Web ベースのテストランナーとテストランナークライアントを使用することで、手動テスト中に豊富な診断データを収集可能です。スクリーンショット、画像アクションログ、画面記録、コードカバレッジ、トレース情報、テスト対象アプリのテスト影響データなどが含まれます。またテスト中に発見されたバグも自動的に含まれるため、開発者は問題を簡単に再現できるようになります。

拡張可能なプラットフォーム

既存のツールやテクノロジを、Azure DevOps と統合することが可能です。そのことで使用できるテスト管理ライフサイクルも拡張することができます。

3.4 Azure Test Plansの料金について

Azure Test Plans は Azure DevOps サービスの料金プランに包括され提供されます。Azure Test Plans を利用するために、ユーザーアカウント毎に「 Basic プラン+ Test プラン」に加入することになり約 6,000 円/月程度の費用が発生します。正式な価格については販売店、公式サイトにてご確認ください。

Azure DevOps の料金

4.まとめ

DevOps の基礎知識、Azure が提供する DevOps 支援サービスである Azure DevOps についてと、ラインナップされているサービスの中から Azure Test Plans をピックアップして解説しました。 Azure DevOps のサービスはそれぞれ独立して使用することが可能ですが、組み合わせて使用することでより、 DevOps の推進を強力に支援してくれるサービスです。 Azure Test Plans には多くの機能オプションが利用できます。利用に際しては専門家へ相談されることも推奨いたします。

Azure の導入を相談する

Azure導入支援サービス

Azure 導入支援サービス

Microsoft Azure 導入の具体的な方法の検討や技術検証を専門家がサポートいたします。

Free

資料ダウンロード

課題解決に役立つ詳しいサービス資料はこちら

資料ダウンロード
  • Azure導入支援・構築・運用サービス総合カタログ

    Microsoft Azure サービスの導入検討・PoC、設計、構築、運用までを一貫してご支援いたします。
    Azure導入・運用時のよくあるお悩み、お悩みを解決するためのアールワークスのご支援内容・方法、ご支援例などをご確認いただけます。

Microsoft Azureを利用したシステムの設計・構築を代行します。お客様のご要件を実現する構成をご提案・実装いたします。

Azure導入個別相談会(無料)

Tag: Azure Test Plans DevOps

Contactお問い合わせ

お見積もり・ご相談など、お気軽にお問い合わせください。

single.php