xcodebuild
單寫一個xcodebuild,工程編譯使用默認的scheme和編譯配置。
scheme、targets、配置、目標設備、SDK和導出數據位置能夠在後面自定義配置
archive打包操做git
xcodebuild archive -workspace PROJECT_NAME.xcworkspace -scheme SCHEME_NAME -configuration release -archivePath EXPORT_ARCHIVE_PATH -archivePath:設置項目的歸檔路徑
導出ipa文件xcode
xcodebuild -exportArchive -archivePath EXPORT_ARCHIVE_PATH -exportPath EXPORT_IPA_PATH -exportOptionsPlist ExportOptionsPlistPath -allowProvisioningUpdates -exportArchive:導出ipa -exportPath:導出ipa文件的路徑 -exportOptionsPlist:文件導出時的配置信息 -allowProvisioningUpdates:容許xcodebuild與蘋果網站通信,進行自動簽名,證書自動更新,生成。
單元測試緩存
xcodebuild test -project PROJECT_NAME.xcodeproj -scheme SCHEME_NAME -destination 'platform=iOS Simulator,name=iPhone 6s,OS=11.2' - configuration Debug -derivedDataPath output -derivedDataPath:產生的緩存文件放在./output目錄下 configuration:編譯環境,選擇Debug/Release -destination :選擇test時的目標設備和系統版本號
xcodebuild test -project PROJECT_NAME.xcodeproj -scheme SCHEME_NAME -destination 'platform=iOS Simulator,name=iPhone 6s,OS=11.2' -only-testing:TARGET_NAME/CLASS_NAME/FUNC_NAME -quiet -only-testing: 只測試某一個方法,target名/類名/方法名 -quiet : 除了錯誤和警告不打印任何信息
self.app = [[XCUIApplication alloc] initWithBundleIdentifier:@"com.xxx.id"]; [self.app launch];
xcodebuild test-without-building -workspace PROJECT_NAME.xcworkspace -scheme doctor -destination 'platform=iOS Simulator,name=iPhone 6s,OS=12.0' -only-testing:TARGET_NAME/CLASS_NAME/FUNC_NAME
//1.產生xctestrun文件 xcodebuild build-for-testing -project PROJECT_NAME.xcodeproj -scheme SCHEME_NAME -destination 'platform=iOS Simulator,name=iPhone 6s,OS=11.2' - configuration Debug -derivedDataPath output -derivedDataPath: derivedDataPath/Build/Products目錄下生成一個.xctestrun文件,包含測試信息 //2.使用xctestrun文件(不帶-workspace/-project/-scheme參數) xcodebuild test-without-building -destination 'platform=iOS Simulator,name=iPhone 6s,OS=12.0' -xctestrun DerivedDataPath.xctestrun -only-testing:TARGET_NAME/CLASS_NAME/FUNC_NAME -xctestrun:有這個選項就從指定的路徑下尋找bundle,沒有這個選項在derivedDataPath下尋找bundle -only-testing:TARGET_NAME/CLASS_NAME/FUNC_NAME
xcodebuild常見actionapp
genstrings -a /path/to/source/files/*.m
ibtool --generate-strings-file Localizable.strings en.lpoj/Interface.xib