Xcode
コマンドラインツール
サーチ…
テストの実行
xcodebuild
使用してシミュレータで単体テストを実行するには
ワークスペースがある場合( CocoaPodを使用する場合など )
xcodebuild \
-workspace MyApp.xcworkspace \
-scheme "MyScheme" \
-sdk iphonesimulator \
-destination 'platform=iOS Simulator,name=iPhone 6,OS=9.1' \
test
プロジェクトファイルがある場合
xcodebuild \
-project MyApp.xcproj \
-scheme "MyScheme" \
-sdk iphonesimulator \
-destination 'platform=iOS Simulator,name=iPhone 6,OS=9.1' \
test
別のdestination
値は
-destination 'platform=iOS,id=REAL_DEVICE_UDID'
-destination 'platform=iOS,name=IPHONE NAME'
利用可能なターゲット、スキーム、ビルド構成を一覧表示する
現在のディレクトリにプロジェクトのスキームを一覧表示するには
xcodebuild -list
必要に応じて、パスをプロジェクトまたはワークスペースファイルに渡すことができます
xcodebuild -list -workspace ./MyApp.xcworkspace
xcodebuild -list -project ./MyApp.xcodeproj
出力例
Information about project "Themoji":
Targets:
Themoji
ThemojiUITests
Unit
Build Configurations:
Debug
Release
If no build configuration is specified and -scheme is not passed then "Release" is used.
Schemes:
Themoji
ThemojiUITests
Units
スキーマのコンパイルと署名
スキーマQaのプロジェクトMyProjectで、iPhone用のコードのクリーニングとコンパイル:
xcrun xcodebuild clean \
-workspace "MyProject.xcworkspace" \
-scheme "YourScheme" \
-sdk iphoneos \
-configuration Debug \
archive \
-archivePath builds/MyProject.xcarchive
設定は、 Debug
またはRelease
いずれかになります。
以前にコンパイルされたコードに署名する:
xcrun xcodebuild -exportArchive \
-archivePath builds/MyProject-Qa.xcarchive \
-exportOptionsPlist config.plist \
-exportPath builds
config.plist
は、アプリケーションをパッケージ化して署名する方法についての情報が含まれています。開発ビルド用には、
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>method</key>
<string>development</string>
<key>uploadSymbols</key>
<true/>
</dict>
</plist>
App Storeのリリースplistには次のようなものが含まれているはずです:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>teamID</key>
<string>xxxxxxxxxxx</string>
<key>method</key>
<string>app-store</string>
<key>uploadSymbols</key>
<true/>
</dict>
</plist>
チームIDはキーチェーンから取得できます。
利用可能なすべてのパラメータ
-
compileBitcode
-
embedOnDemandResourcesAssetPacksInBundle
-
iCloudContainerEnvironment
-
manifest
-
method
-
onDemandResourcesAssetPacksBaseURL
-
teamID
-
thinning
-
uploadBitcode
-
uploadSymbols
各パラメータの詳細については、 xcodebuild --help
実行してxcodebuild --help
Xcodeアプリケーションバンドル(xcrun)のコマンドラインツールにアクセスする
xcrun
は、システムのデフォルトのXcodeバージョン( xcode-select
)を使用して、Xcodeアプリケーションバンドル(llvm- xcode-select
)からコマンドラインツールを見つけて実行します。
# Generate code coverage reports via llvm-cov
# /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
xcrun llvm-cov [parameters]
# Execute xcodebuild
# /Applications/Xcode.app/Contents/Developer/usr/bin
xcrun xcodebuild [parameters]
# Use Xcode's version of git, e.g., if you have installed a newer version
# /Applications/Xcode.app/Contents/Developer/usr/bin
xcrun git [parameters]
xcode-selectでコマンドラインツールを切り替える
アクティブな開発者ディレクトリ(選択されたXcode)にパスを出力します。
xcode-select -p
別のバージョンのXcodeを選択します(例:Beta)。
sudo xcode-select -s /Applications/Xcode-beta.app
Xcodeのデフォルトバージョンにリセットする
sudo xcode-select -r
これは、 sudo xcode-select -s /Applications/Xcode.app
を実行するのと同じです
詳細はman xcode-select
参照してください。