見出し画像

テストプロセスの5つの流れとは?web3プロダクトの具体例を交えてわかりやすく解説

ソフトウェア開発におけるテストプロセスは、製品の成功に直結する重要なステップです。この重要性は、web3領域においても変わりません。

今回は、テストプロセスを5つの主要なステップに分け、各ステップにおける具体的なアクションとweb3プロダクトをサンプルケースとした場合の適用例をDAIJOBU社の経験を基に解説します。


テストプロセスとは

テストプロセスは、ソフトウェア開発の各ステージで品質を保証し、バグや問題点を特定し修正するための一連の手順です。特にweb3のような新技術分野では、未知のエラーやセキュリティの脅威が常に存在するため、厳密で詳細なテストプロセスが必須となります。

web3テストプロセスの主な5つの流れ

以下はテストプロセスを主要な5つの段階に分けたものです。その中に計画〜評価作業も含まれています。

  1. テスト計画とコントロール

  2. 分析と設計

  3. 実装と実行

  4. 終了基準の評価とレポート

  5. 終了作業

ここからは5つの各段階について、web3ウォレットをサンプルケースとして当てはめながら解説していきます。

テストプロセスの主な5つの流れ

テスト計画とコントロール

テスト計画は、プロジェクトのテスト戦略を実現するための具体的な活動を定義する基本的なステップです。テストの範囲、目的、リソース、タイムラインを明確にし、全体のテスト活動を効率的にコントロールします。状況に応じて、テストアプローチの優先度を判断するためにプロダクトリスクやプロジェクトリスクを定義する場合があります。

また、テストのコントロールは、計画通りに進んでいるかを監視し、必要に応じて調整を行うプロセスです。進捗は定期的に確認され、遅延やリスクが発生した際にはリソース配分やテストの優先順位が見直されます。主なタイミングは、各テストフェーズ終了時や重要なマイルストーンの達成時で、適切な対応を行いプロジェクトの品質を維持します。

◎策定・実行内容

  • テスト目的の定義

  • テスト範囲の決定

  • テストアプローチの決定

  • テスト工数の見積もり

  • テストスケジュールの策定

  • テストに必要なリソースの確保

◎サンプルケース:web3ウォレットのテストの場合

  • テスト目的
    基本的な操作に問題がないことの確認/ブロックチェーンまわりなど、web3に特化したインシデントの検出

  • テスト範囲
    web3特化機能(NFTの送受信、FTの送受信など)、主要なユースケース(新規登録機能、ログイン機能など)

  • テストアプローチ
    機能テスト、シナリオテスト

  • テスト工数
    12人日
    内訳: テスター2人 × 6営業日 (48時間)

  • テストスケジュール

    1. 見積・計画: 2024/5/1~2024/5/6

    2. 設計: 2024/5/9 ~ 2024/6/1

    3. 実施: 2024/6/4 ~ 2024/6/12

    4. バグ報告書納品: 2024/6/12

    5. テスト結果報告: 2024/6/19

  • 対象アプリ
    〇〇 wallet 設計: Ver.1.0.0 実施: Ver.1.0.0

  • 対象端末: iOS 最新バージョン、Android 最新バージョン

分析と設計

テスト分析では、仕様書や要件定義書、設計書などのテストベースを基に、ソフトウェアの機能や振る舞いを把握し、テスト対象やリスクの高い箇所を特定します。このプロセスで、曖昧さや不整合、欠落などの潜在的な欠陥も発見し、テスト条件を明確にします。さらに、非機能要件(パフォーマンス、セキュリティなど)も考慮し、リスクに応じて優先度を決定します。テスト分析は「何をテストするか」を決め、プロジェクトの品質向上に寄与します。

次に、テスト設計では、テスト分析の結果を基に、具体的なテストケースやシナリオを作成します。ここでは、テストの種類、実施方法、必要なデータ、テスト環境などを決定し、分析段階で特定したテスト条件をすべてカバーすることが求められます。

◎策定・実行内容

  • テスト観点の作成

  • テストケースの設計

  • テストデータの設計

  • テストウェアの選定や設計

  • テスト環境の設計

◎サンプルケース:web3ウォレットのテストの場合(テスト内容設計の一部)

実装と実行

準備されたテスト計画に従い、設計されたケースを逐一実行し、システムの欠陥を探ります。「実装」の工程では、テストの実施手順や確認内容、テスト実施時に用いるテストデータを作成します。「実行」では設計・実装を経て作成したテストケースを、テスト環境下で実際に実行します。バグを見つけ次第、それを修正することがこのフェーズの重要な目的です。

◎策定・実行内容

  • テスト環境のセットアップ

  • テストデータの作成

  • 計画した順番に従い、テスト手順を実行

  • テスト結果を記録

  • 実行結果と期待する結果を比較検証

◎サンプルケース:web3ウォレットのテストの場合(不具合管理表の一部)

終了基準の評価とレポート

各テストサイクルの終わりには、設定した終了基準に基づきプロジェクトの進捗を評価し、レポートを作成します。これらの評価を通じて、プロジェクトの各ステージでの改善点が見つかり、全体の品質向上に繋がります。

◎策定・実行内容

  • テスト記録をテスト計画作業で定義した終了基準と比較

  • 追加テストの必要性や終了基準の変更を定義

  • テストサマリーレポートの作成

◎サンプルケース:web3ウォレットのテストの場合(レポートの一部)

終了作業

プロジェクトの終了段階では、テスト結果をもとに最終的なレビューとドキュメントの整理を行います。web3プロジェクトでは、後続のプロジェクトに備えて、テストデータと結果の詳細な記録が特に重要です。また、テストプロセスの見直しを行い、次のプロジェクトに向けての改善点を洗い出します。

◎策定・実行内容

  • チーム内での振り返りを実施

  • 反復したテストに備え、ナレッジを蓄積

  • インシデントレポートを終了させるか、未対策の欠陥を明記

まとめ

本記事では、テストプロセスの5つの主要なステージについて詳しく解説しました。テスト計画とコントロール、分析と設計、実装と実行、終了基準の評価とレポート、そして終了作業。これらの各段階を通じて、テストプロセスがいかに体系的に進行されるかを見てきました。このプロセスを適切に実行することで、プロダクトの品質が大幅に向上し、web3プロダクトの成功がより確実になります。

DAIJOBU社では、web3特化のQAサービスを提供しています。専門的な知見と豊富な経験を持つ我々が、お客様のプロダクトの品質保証をサポートします。

web3プロダクトのQAでお困りの際は、ぜひ一度ご相談ください。


また、QAエンジニアも募集しておりますので、ご興味のある方はぜひご応募ください。
カジュアル面談もございますので、お気軽にご応募ください!

募集の詳細はこちらから!

ご応募はこちらから!
https://daijobu.io/

カジュアル面談はこちらから!
https://pitta.me/matches/UMidcjrFmWvK

お問い合わせはこちらから!
https://daijobu.io/contact

DAIJOBUについて(コーポレートサイト)はこちらから!


いいなと思ったら応援しよう!