このプロジェクトについて
BGSTM(Better Global Software Testing Methodology)は、計画から報告までの品質作業を組織化することを目的としたテストフレームワークおよびナレッジベースです。その中心的な考え方は、方法論に依存しないことです:同じ6フェーズのライフサイクルは、特定の開発プロセスをチームに強いることなく、Agile、Scrum、Waterfall、またはハイブリッドな配信モデルで機能することを意図しています。
フレームワークは正確に6つの標準フェーズを定義し、ドキュメントでは専門分野では新しいフェーズを追加するのではなく、これらのフェーズを再利用することを強調しています。それらは:テスト計画(スコープ、戦略、リスク、リソース、タイムライン);テストケース開発(トレーサブルなシナリオとケース);テスト環境準備(インフラストラクチャ、ツール、アクセス、テストデータ);テスト実行(テストの実行、証拠の収集、欠陥の管理);テスト結果分析(結果の解釈、トレンド、品質シグナル);テスト結果報告(リリース判断をサポートするための調査結果の伝達)。最後のフェーズは次のサイクルのために最初のフェーズにフィードバックされます。
述べられているコア原則には、品質ライフサイクルのエンドツーエンドのカバレッジ、要件、テスト、結果、欠陥、証拠、決定間のトレーサビリティの維持、リスクに応じたテストの厳格さのスケーリング、エビデンスに基づく報告、ツールを追加する前に方法論とテンプレートから始める実践的な導入が含まれます。
リポジトリは主にドキュメントです。フェーズごとのガイド、Agile、Scrum、Waterfallをカバーする方法論ガイドおよびそれらの比較、プラン、ケース、レポート、リスクおよびトレーサビリティアーティファクト向けの再利用可能なテストテンプレート、および実例を提供します。1つの例では、すべての6フェーズをETLおよびデータパイプラインの意味的検証に適用しています;READMEではこれが追加のフェーズではないことを明示しています。
方法論に加えて、プロジェクトはフレームワークの一部がソフトウェアでどのように表現できるかを示すオープンソースの参照アプリケーションをホストしています。これはReactフロントエンド、FastAPIバックエンド、PostgreSQLデータベースを組み合わせ、トレーサビリティ機能、リリース準備状況および品質KPIダッシュボード、ロールベースのアクセス制御、通知、エクスポートをカバーしています。セットアップはスクリプト駆動です:macOS/Linux用のシェルスクリプトとWindows用のバッチファイルがDockerとDocker Composeの存在を確認し、環境ファイルを作成し、サービスを起動し、ヘルスチェックを待ち、オプションでサンプルデータをロードします。その後、フロントエンド、バックエンドAPI、APIドキュメントはローカルポートでアクセス可能になります。
品質チェックは組み込まれています。バックエンドはpytest、ruff、mypyで実行され、フロントエンドはlintおよび型チェックスクリプトで実行され、Playwrightのエンドツーエンドスイートは認証、CRUD、提案、トレーサビリティ、エクスポート、RBAC、通知、リリース準備状況、品質ダッシュボードをカバーします。バックエンド、フロントエンド、Dockerビルド、エンドツーエンドテスト向けのCIワークフローが提供され、ドキュメント内の内部Markdownリンクをチェックする別のワークフローがあります。ドラフト仕様であるExternal Results v1は、外部オートメーションから結果を取り込むパターンを説明しています。
プロジェクトは実行ツールとは別に位置づけられています:コンパニオンリポジトリであるbgstm-playwright-frameworksは、BGSTMネイティブのトレーサビリティを備えたPlaywrightオートメーションのスキャフォールディングを提供し、結果をBGSTMに報告戻します。これにより、方法論は特定のオートメーションフレームワークに依存しなくなります。ドキュメント、例、テンプレート、方法論の改善、アプリケーションコード、統合への貢献が歓迎され、貢献者向けに強調されている2つのドキュメントルールは、方法論を6フェーズに保つこと、およびdocs/test-templatesを正規のテンプレートディレクトリとして扱うことです。プロジェクトはMITライセンスの下でリリースされています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.