私の iOS プロジェクトには、Local Development、Integration、QA、Demo、Production の 5 つのスキームがあります。各スキームは、異なる構成を使用して、ネットワークのポーリング頻度、API エンドポイント、分析などを制御します。
同様に、ローカル開発、統合、QA、デモ、本番の 5 つの対応するターゲットがあります。各ターゲットには、API キー、タイミングの数値などを含むいくつかのユーザー定義のビルド設定があります。
アプリケーションのファイルは、対応するユーザー定義のビルド設定を描画するInfo.plist
などのアプリケーション変数を使用します。${SOME_ENDPOINT_URL}
変数を取得するには、次のようにします。
[[[NSBundle mainBundle] infoDictionary] valueForKey:@"Some Endpoint URL"]
これは、次のようにユーザー定義のビルド設定に対応します。
"Some Endpoint URL" = ${SOME_ENDPOINT_URL}
現在、単体テストとロジック テストを実行するためにプロジェクトを適切に構成する方法を検討しています。
環境が正しく構成されているかどうかを判断するためのテストを作成するためのベスト プラクティスが何であるかはわかりません。
- 環境ごとに 5 つの追加のテスト固有のターゲットを構築するのは正しいですか?
- それとも、各スキームのテスト コンポーネントの「実行アクションの引数」設定をオーバーライドし、どのスキームを調べているかを指定する引数のようなものを提供する方がよいでしょうか?
- 複数の環境を持つ iOS プロジェクトの単体テストとロジック テストを構成するための既存の参照はありますか? このプロジェクトの複雑さは、ほとんどのドキュメントの範囲を超えているようです。