概要
2000MANプロジェクトでは、自動車の予約および販売管理システムを開発しました。このシステムは、予約と販売を処理するためのSalesSupportサブシステムと、倉庫運営、支店、注文状況を管理するためのXMAPサブシステムの2つで構成されており、ディーラー業務の効率化を実現します。
テスト範囲
- UIテスト: ウェブとモバイルのUI要素を画像比較で検証。
- 機能テスト: SalesSupportとXMAPの両サブシステムの主要機能をテストし、予約、販売、倉庫管理が円滑に行えることを確認。
- 統合テスト: SalesSupportとXMAP間のデータフローがシームレスであることを検証。
- 環境設定: ウェブテスト用のSelenium Gridを構成し、iOSテスト用にEC2上のMac miniを設定。
課題と解決策
- 課題1: 頻繁な更新後の小さなUI変更の検出
=> 解決策: ウェブの自動UIテストにはSelenium、モバイルにはDetox.jsを使用。OpenCVおよびResemble.jsを統合して正確な画像比較を実現し、手動検証後に動的更新を実施。
- 課題2: スケーラブルなテスト環境の構築
=> 解決策: ウェブテスト用にSelenium Grid、iOSテスト用にEC2上のMac miniを設定し、クロスプラットフォームテストを自動化、運用を効率化。
テスト結果
- 発見された内部バグの総数: テストフェーズ中に629個のバグが特定され、解決されました。
- 発見された外部バグの総数: デプロイ後に63個のバグが報告され、比較的低いバグ漏れ率を示しています。
- バグ漏れ率: コード1,000行あたり約0.5個のバグで、高い品質保証レベルを示しています。
- 欠陥密度: UIテストの自動化と画像比較技術の改善により30%削減されました。
- コードベースのサイズ: 125,800行。
- フロー (毎日実行)
- 評価する
顧客のフィードバック
「2000MANプロジェクトのテストアプローチは、デプロイ前に問題を特定し解決するのに非常に効果的でした。画像比較ツールは頻繁な更新にもかかわらず、システムの視覚的な整合性を維持しました。チームの技術的な専門知識と品質へのコミットメントは、製品全体の品質を大幅に向上させました。」