アプリをビルドし、SmokeTest1とSmokeTest2の2つのシミュレータにインストールするスキル。使用シーン:(1)「アプリをビルドしてインストールして」などのリクエスト (2) テスト前の環境準備 (3) 新しいビルドをシミュレータに展開する必要がある場合
アプリをビルドし、指定された2つのシミュレータ(SmokeTest1、SmokeTest2)にインストールするスキル。
このスキルは以下の処理を自動実行する:
Okumuka.xcodeprojOkumukaapp.hiragram.OkumukaSmokeTest1SmokeTest21. list_simulatorsでSmokeTest1とSmokeTest2を検索
2. 各シミュレータのUDIDを取得
3. 必要に応じてboot_simulatorで起動
xcodebuildコマンドでアプリをビルド:
xcodebuild build \
-project Okumuka.xcodeproj \
-scheme Okumuka \
-destination 'platform=iOS Simulator,name=SmokeTest1' \
-derivedDataPath .build
重要ポイント:
-derivedDataPath .build を指定してビルド成果物の場所を固定ビルド成果物から.appファイルを探す:
find .build -name "Okumuka.app" -type d
通常、以下のようなパスになる:
.build/Build/Products/Debug-iphonesimulator/Okumuka.app
各シミュレータに対してxcrun simctlでアプリをインストール:
# SmokeTest1へインストール
xcrun simctl install <SmokeTest1_UDID> .build/Build/Products/Debug-iphonesimulator/Okumuka.app
# SmokeTest2へインストール
xcrun simctl install <SmokeTest2_UDID> .build/Build/Products/Debug-iphonesimulator/Okumuka.app
# list_simulatorsでシミュレータ一覧を取得
simulators = list_simulators()
# SmokeTest1とSmokeTest2を検索
smoketest1 = next((s for s in simulators if s['name'] == 'SmokeTest1'), None)
smoketest2 = next((s for s in simulators if s['name'] == 'SmokeTest2'), None)
# 起動が必要な場合は起動
if smoketest1['state'] != 'Booted':
boot_simulator(smoketest1['udid'])
if smoketest2['state'] != 'Booted':
boot_simulator(smoketest2['udid'])
xcodebuild build \
-project Okumuka.xcodeproj \
-scheme Okumuka \
-destination 'platform=iOS Simulator,name=SmokeTest1' \
-derivedDataPath .build
# .appパスを特定
APP_PATH=$(find .build -name "Okumuka.app" -type d | head -1)
# 各シミュレータにインストール
xcrun simctl install <UDID1> "$APP_PATH"
xcrun simctl install <UDID2> "$APP_PATH"
処理完了後、以下の形式で報告:
## ビルド&インストール結果
✅ ビルド完了: Okumuka.app
✅ SmokeTest1へインストール完了
✅ SmokeTest2へインストール完了
アプリパス: .build/Build/Products/Debug-iphonesimulator/Okumuka.app
SmokeTest1またはSmokeTest2が見つからない場合:
- list_simulatorsの結果を確認
- シミュレータ名が正確か確認
- ユーザーに報告
ビルドエラーが発生した場合:
- エラーメッセージを確認
- コンパイルエラー、依存関係の問題などを特定
- ユーザーに詳細を報告
インストールエラーが発生した場合:
- シミュレータが起動しているか確認
- .appファイルが存在するか確認
- xcrun simctlのエラーメッセージを確認
| ツール | 用途 |
|---|---|
mcp__plugin_ios-team_iossim__list_simulators | シミュレータ一覧取得 |
mcp__plugin_ios-team_iossim__boot_simulator | シミュレータ起動 |
Bash(xcodebuild:*) | アプリビルド |
Bash(xcrun simctl:*) | アプリインストール |
Bash(find:*) | .appファイル検索 |
-derivedDataPath .buildを指定する-configuration Releaseを追加)