錯誤解決表
could not find test host for XXX TEST_HOST evaluates to 錯誤
為了解決「could not find test host」的錯誤,請將 Host Application 設置為您的專案,而不是 Custom。
No Such module XXXX 錯誤
如果您遇到「No Such module XXXX」的錯誤,請刪除原有的 Tests,然後重新創建一個新的測試目錄。
上傳步驟
獲取 DerivedData 路徑
要獲取 DerivedData 路徑,請使用以下代碼替換您的帳戶名稱:
/Users/<your_account>/Library/Developer/Xcode/DerivedData
在該目錄下,您會看到兩個檔案。
獲取 xctestrun 名稱
使用以下代碼獲取 xctestrun 名稱:
Doughpack_iphoneos14.2-arm64-armv7.xctestrun
壓縮檔案
在上傳之前,您需要將這兩個檔案壓縮。
獲取手機 ID
使用以下命令來獲取您的手機 ID:
instruments -s devices
您將會獲得像是 00008020-0019495814DA002E
的實體手機 ID。
xcodebuild test-without-building 測試指令
官網範例
使用以下命令來運行測試,不進行編譯:
xcodebuild test-without-building \
-xctestrun "Derived Data/Build/Products/YourApp.xctestrun" \
-destination id=your-phone-id
範例參數
您需要組合 xctestrun 名稱和手機 ID:
xcodebuild test-without-building -xctestrun /Users/steven/Library/Developer/Xcode/DerivedData/Doughpack-dptltxsaexugdqeabkhmhyousmli/Build/Products/Doughpack_iphoneos14.2-arm64-armv7.xctestrun -destination id=00008020-0019495814DA002E
Firebase XCTest 上傳
將剛剛壓縮的檔案上傳到 Firebase。
注意:如果您遇到 Test Lab 失敗的情況,可能是由於 Firebase 尚未支持您所使用的 Xcode 版本(如 Xcode 12)。
常見問題解答(Q&A)
1. 如何解決 Firebase XCTest 的常見錯誤?
如果您遇到錯誤,可以參考本文中的錯誤解決表,通常只需確認 Host Application 和測試檔案的正確性即可解決問題。
2. 如何獲取手機 ID 以便於測試?
您可以使用命令 `instruments -s devices` 來獲取連接設備的 ID,這是進行雲端測試所必須的。
3. Firebase XCTest 上傳後,如何查看測試結果?
上傳完成後,您將能夠在 Firebase 控制台中查看測試結果,包括詳細的報告和分析圖表。
—