錯誤解決表

could not find test host for XXX TEST_HOST evaluates to 錯誤

錯誤示例: could not find test host

為了解決「could not find test host」的錯誤,請將 Host Application 設置為您的專案,而不是 Custom。

Host Application 設置為專案

No Such module XXXX 錯誤

如果您遇到「No Such module XXXX」的錯誤,請刪除原有的 Tests,然後重新創建一個新的測試目錄。

刪除原有的 Tests
創建新的測試目錄
新的測試目錄示例

上傳步驟

獲取 DerivedData 路徑

要獲取 DerivedData 路徑,請使用以下代碼替換您的帳戶名稱:

/Users/<your_account>/Library/Developer/Xcode/DerivedData


DerivedData 路徑示例

在該目錄下,您會看到兩個檔案。

獲取 xctestrun 名稱

使用以下代碼獲取 xctestrun 名稱:

Doughpack_iphoneos14.2-arm64-armv7.xctestrun

壓縮檔案

在上傳之前,您需要將這兩個檔案壓縮。


壓縮檔案示例

獲取手機 ID

使用以下命令來獲取您的手機 ID:

instruments -s devices

您將會獲得像是 00008020-0019495814DA002E 的實體手機 ID。

手機 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。


上傳檔案示例

Firebase 上傳界面
上傳進度
上傳完成
測試結果
測試結果詳細
測試結果分析
測試結果圖表
測試詳細報告
測試結果總結
測試結果頁面

注意:如果您遇到 Test Lab 失敗的情況,可能是由於 Firebase 尚未支持您所使用的 Xcode 版本(如 Xcode 12)。

常見問題解答(Q&A)

1. 如何解決 Firebase XCTest 的常見錯誤?

如果您遇到錯誤,可以參考本文中的錯誤解決表,通常只需確認 Host Application 和測試檔案的正確性即可解決問題。

2. 如何獲取手機 ID 以便於測試?

您可以使用命令 `instruments -s devices` 來獲取連接設備的 ID,這是進行雲端測試所必須的。

3. Firebase XCTest 上傳後,如何查看測試結果?

上傳完成後,您將能夠在 Firebase 控制台中查看測試結果,包括詳細的報告和分析圖表。

Categorized in: