OmniLab ATS 是一種測試工具,可供 Android 開發人員和測試工程師使用,用來採用使用者介面執行標準 Android 測試套件,例如 Android Compatibility Test Suite (CTS)。這項工具可做為各種測試架構 (例如貿易聯盟 (TF) 和 Google Mobly) 的網路介面,方便您以最少設定的測試裝置執行 CTS 和多裝置測試,並建立時間表以持續執行測試。
設定 OmniLab ATS
本節說明如何安裝及設定 OmniLab ATS。
OmniLab ATS 會使用下列位置的原始碼:
- OmniLab ATS 原始碼
- TradeFed Cluster 原始碼
安裝 OmniLab ATS
遵循執行測試套件的硬體和軟體需求。
如要查看 CTS 的相關規定,請前往 source.android.com。
OmniLab ATS 沒有額外的硬體需求,但建議您以 CTS 主機需求做為起點。
安裝 OmniLab ATS 的方法有兩種:
使用安裝程式安裝
在 Ubuntu 20.04 以上版本中,安裝程式會安裝並設定執行 OmniLab ATS 所需的所有程式和資源。
如何使用安裝程式:
執行安裝程式:
curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
執行
mtt version
查看已安裝的 OmniLab ATS CLI 版本。
手動安裝
安裝 Docker
請按照安裝 Docker Community Edition (CE) 的操作說明在 Linux 機器上安裝 Docker Community Edition。
您可能需要重新啟動終端機視窗,或登出再重新登入,權限變更才會生效。
安裝 Python 3
OmniLab ATS CLI 已通過 Python 3.7 至 3.11 版的驗證。
如果是 Ubuntu 16.04 或更早版本,請先執行下列任一操作,新增 Python 3 的存放區:
執行下列指令:
sudo add-apt-repository ppa:deadsnakes/ppa
從來源建構及安裝存放區。
如要安裝 Python 3,請執行下列指令:
sudo apt-get update
sudo apt install python3 python3-distutils
如要安裝特定的 Python 3 版本 (例如 3.10),請改為執行下列指令:
sudo apt-get update
sudo apt install python3.10 python3.10-distutils
取得 OmniLab ATS CLI
啟動 OmniLab ATS
使用下列指令啟動 OmniLab ATS:
mtt start
首次啟動使用者介面時,可能需要幾分鐘才會顯示。CLI 會顯示用於在瀏覽器中存取 UI 的網址。根據預設,網頁網址為 localhost:8000
。如有需要,您可以使用 --port
標記,在啟動時變更預設連接埠。
如果有較新的版本可供使用,您可以更新至目前版本。如需最新版本資訊,請參閱版本資訊。
如要更新至目前版本,請執行:
mtt start --force_update
如要停止應用程式,請執行以下命令:
mtt stop
如要查看其他指令的清單,請使用:
mtt --help
備份及還原資料庫
如要備份 OmniLab ATS 資料庫,請停止應用程式並執行下列指令,將目前的資料庫備份到主目錄中名為 mtt-backup.tar
的 TAR 檔案:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."
如要還原,請在啟動應用程式前執行下列指令:
docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"
設定精靈
首次安裝及執行 OmniLab ATS 後,設定精靈會引導您完成幾個步驟,協助您依環境需求自訂工具。您在這裡所做的任何變更,日後都可透過「設定」頁面重新設定。
還原設定備份
如果您有從其他 OmniLab ATS 主機備份的設定檔,只要按一下「上傳檔案」按鈕,即可上傳該檔案,並複製該主機中修改過的任何設定。
圖 1. 還原設定備份。
設定預設服務帳戶
您可以設定服務帳戶,讓 OmniLab ATS 在存取資源 (例如 Google Cloud Storage、Google 雲端硬碟) 時預設使用該帳戶。如要驗證服務帳戶,請按一下「Upload Service Account Key」,然後選取服務帳戶的 JSON 金鑰檔案。
圖 2. 設定服務帳戶。
服務帳戶驗證成功後,頁面右上角會顯示帳戶電子郵件地址。如要變更服務帳戶,請按一下帳戶名稱、移除目前的預設帳戶,然後上傳新的服務帳戶金鑰。
圖 3. 變更服務帳戶。
匯入設定集
設定集是執行測試套件 (包括相關裝置動作) 的設定組合,以及建構管道。設定集會託管在特定的 Google Cloud Storage (GCS) 值區中。使用 Google 帳戶驗證 GCS 建構管道後,畫面上會列出您可以使用的所有設定集。
選取要新增至 Test Station 主機的任何設定組合,然後按一下「Import Selected」。
圖 4. 匯入設定集。
納入 Wi-Fi 設定
部分 CTS 測試需要裝置連線至 Wi-Fi 無線基地台。如要選取 Wi-Fi 網路,請輸入 WiFi SSID 和選用的 WiFi PSK。
圖 5. Wi-Fi 無線基地台設定。
完成設定精靈後,頁面會重新載入並套用新設定。
連線至裝置
您必須啟用 USB 偵錯功能,才能使用裝置進行測試。如要啟用偵錯功能,請按照下列步驟操作:
請按照「啟用開發人員選項和偵錯」一文的說明操作。
如果您打算使用預先載入自訂 ADB 金鑰的測試 Android 版本,請將自訂
.adb_key
檔案放在~/.android/
目錄下。系統會自動載入這些檔案,並在執行這些版本的裝置完成刷機後,將檔案傳遞至 ADB,以便自動啟用 USB 偵錯功能。
使用 USB 將裝置連接至主體機器。
在重新整理網頁介面後,裝置會在一分鐘內顯示在 OmniLab ATS Devices 分頁中。您也可以在這個分頁中查看裝置的狀態。
圖 6. 連線至裝置。
不同的裝置狀態如下:
- 可用:裝置已連接,可以執行測試。
- 已分配:裝置已連線並正在執行測試。每部裝置一次只能執行一項測試,因此裝置必須先完成目前的測試,才能執行新的測試。
進行測試
選取測試
OmniLab ATS 隨附一組預先綁定的 CTS 設定。如要執行上述其中一項測試,請前往「Test Suite」分頁,針對所選測試按一下「Run test」。
圖 7. 選取測試。
如要編輯或新增測試,請參閱「新增測試」。
設定測試執行
編輯要用於這項特定測試執行作業的參數。大部分參數都會預先填入所選測試設定中定義的值。
您可以使用預設值完成這個步驟,但也可以視需要變更任何參數,例如 Max Retry 和 Command。
圖 8. 設定測試執行作業。
測試執行參數如下:
- 名稱:要執行的測試套件名稱。
- 執行次數:排定執行時應執行此測試的次數。測試執行作業會以貿易聯盟的方式進行排程,如果有足夠的容量,最多可同時執行 20 項測試。
- 重試次數上限:如果至少有一個測試失敗,則重試測試執行次數的上限。為了執行完整的 CTS 來處理不穩定的測試,通常請將此設定設為 4 到 6 次重試。
- 佇列逾時:如果測試執行作業處於「佇列」狀態太久,系統會自動取消該作業。請在此指定取消前要等待的時間長度。預設值為 24 小時。
指令:執行測試套件的指令。您可以在這裡輸入其他指令列引數。例如,在 CTS 8.1 中執行特定模組,方法如下:
cts-suite -m ShortModuleName
重試指令:用於重試測試套件的指令。您可以在這裡新增其他指令列引數。舉例來說,如要只重試 CTS 8.1 中的特定模組,請使用以下命令:
cts --retry 0 -m ShortModuleName
重試引數可能與初始指令可用的引數不同,因此請在官方網站上查看所選測試套件的支援參數。
「Previous Test Run」:如要重新執行先前的測試:
本機 - 如果執行作業是在目前主機上啟動,請在查看測試執行作業詳細資料時,輸入看到的測試執行作業 ID。
圖 9.本機先前執行的測試。
遠端 - 如果執行作業是在不同的主機上啟動,請依序選取「Remote」(遠端) 和「Upload Test Results File」(上傳測試結果檔案),然後從本機儲存空間選取檔案,即可上傳測試結果檔案。
圖 10. 遠端執行先前的測試。
選取裝置
按一下核取方塊,選取要用於執行測試套件的裝置。資料分割數量應會自動變更,以符合所選裝置數量。
圖 11. 選取裝置。
如要依據裝置序號以外的屬性選取裝置,您可以手動輸入「裝置規格」。舉例來說,如要選取 3 個產品名稱為「bramble」的裝置,請輸入以下內容:
product:bramble;product:bramble;product:bramble
支援的屬性如下:
- build_id
- device_serial
- device_type
- 主機名稱
- 產品
- product_variant
- sim_state
所有所選裝置都必須處於「可用」狀態才能執行測試,且在執行測試時,所有裝置都會切換至「已指派」狀態。等待裝置可用時,測試執行作業會處於「佇列」狀態。
新增裝置動作
裝置動作是指可在每次測試執行前執行的指令碼。部分裝置動作已完成設定,例如閃燈和重新啟動。如要建立新的裝置動作,請參閱「建立新的裝置動作」。
圖 12. 裝置動作。
如要在測試執行中新增裝置動作,請按一下「新增動作」,選取要新增的動作核取方塊,然後按一下「新增動作」。裝置動作會依序執行。您可以拖曳操作來調整順序。
圖 13. 重新排序動作。
設定測試資源
測試資源是執行測試時所需的檔案。舉例來說,執行 CTS 需要 android-cts*.zip
檔案,而刷新裝置則需要提供建構映像檔。
測試套件 ZIP 檔案的下載網址預設為合作夥伴提供的 Google 雲端硬碟連結。您可以點選「瀏覽」選取其他檔案。在彈出式視窗中,您可以輸入檔案下載連結、使用已驗證的建構管道中的檔案,或上傳要使用的本機儲存空間檔案。
圖 14. 測試資源。
以下是彈出式視窗,可讓您透過網址選取測試資源。您可以輸入下載網址連結,然後按一下「Select」按鈕確認選取。
圖 15.測試資源選取器 - 網頁網址。
如果您已將資源上傳至 Google Grive、Google Cloud Storage (GCS) 或其他管道,也可以前往特定管道的分頁,然後選取該管道中的資源。以下是從 Google 雲端硬碟選取資源的範例。
圖 16. 測試資源選取器 - Google 雲端硬碟。
除了選取檔案之外,Filename 欄位也支援萬用字元。說明文件請見這裡。
圖 17. 測試資源選取器 - 萬用字元模式支援。
您也可以從 OmniLab ATS 的本機檔案儲存空間中選取檔案。您可以將檔案上傳至這個儲存空間,也可以直接使用本機檔案和目錄。
圖 18. 測試資源選取器 - 本機檔案儲存庫。
新增重播設定
您可以安排在主要執行作業完成並載入結果後開始重播作業,但可以使用不同的裝置、動作或資源。
圖 19. 新增重複執行設定。
啟動測試執行作業
輸入測試執行作業所需的資訊後,請按一下「開始測試執行作業」。如果所有資訊皆有效,系統就會開始執行測試,並將您重新導向至可查看測試執行詳細資料和進度的頁面。
圖 20. 開始執行測試。
建立測試計畫
測試計畫可用於定期建立測試執行作業。例如,每天下午 5 點執行 CTS 9.0。如要建立新的測試計畫,請按一下「建立新的測試計畫」。
圖 21. 建立測試計畫。
設定測試計畫
輸入測試計畫的名稱,以及要新增的所有標籤。然後選取要使用的時間表。
- 手動:只有在使用者點選測試計畫清單頁面中的「執行測試計畫」時,測試計畫才會建立測試執行作業。
- 週期性:測試計畫會根據所選週期性排程自動安排測試執行作業。例如,排定每天下午 5 點執行測試。
- 自訂:測試計畫會根據您輸入的 cron 運算式自動安排測試執行作業。舉例來說,如要安排每天下午 5 點執行測試,Cron 運算式為
0 17 * * *
。
圖 22. 設定測試計畫。
新增測試套件
按一下「+ 新增測試執行設定」,即可新增要由測試計畫排定的測試套件。從「Name」下拉式選單中選取測試套件,然後按一下「Next step」。接著,選取要執行測試的裝置,然後按一下「新增設定」。您可以為每個測試計畫新增多項設定。
圖 23. 設定測試執行作業。
新增裝置動作
新增要在每次測試執行前執行的裝置動作。詳情請參閱「新增裝置動作」。
圖 24. 新增裝置動作。
設定測試資源
將測試資源新增至測試計畫的做法,與將資源新增至個別測試執行作業相同。詳情請參閱「設定測試資源」。
圖 25. 設定測試資源。
查看測試執行作業
測試執行作業清單
在「測試執行」頁面上查看排定的測試執行作業清單。按一下「查看」,即可查看測試執行作業的詳細資料。
您也可以在篩選列中輸入字串,然後按下 Enter 鍵,即可篩選清單。您可以使用多個篩選條件,只要用半形逗號分隔即可。篩選器會傳回任何資料欄中包含完全相符文字 (不包含子字串比對) 的所有資料列,但 Status 和 Created 除外。
空白篩選器會傳回所有資料列。目前無法篩選空白值的資料列。
圖 26.測試執行作業清單。
測試執行作業詳細資料
您可以在此查看測試執行作業的詳細資料,例如狀態、記錄和結果。
圖 27.測試執行作業詳細資料。
測試執行狀態
測試執行進度會顯示在「狀態」部分。如果有相關訊息 (例如下載進度、取消原因或錯誤訊息),也會顯示在這裡。
圖 28. 測試執行作業狀態。
測試執行狀態如下:
- 待處理:正在下載必要資源。
- Queued (已排入佇列):測試可在裝置可供使用時執行測試。
- 執行中:測試在已指派的裝置上執行。
- 已完成:測試已完成並回報結果。
- 已取消:使用者已取消測試,或在嘗試尋找可用裝置時逾時。
- 錯誤:發生錯誤,導致測試無法執行。
取消測試執行作業
如果測試執行作業尚未完成,您可以按一下「取消」,然後在確認對話方塊中按一下「是」來取消測試。如果測試執行時間超過 queue_timeout_seconds 欄位指定的時間,系統也會自動取消測試執行。在「Running」狀態下取消測試執行作業可能需要幾分鐘的時間才會生效。
圖 29. 取消測試執行作業。
測試執行結果
測試執行完畢後,系統會收集並顯示結果。您可以按一下每個執行作業的箭頭,查看其他詳細資料。按一下「View Output Files」,即可查看收集到的測試構件,例如 test_result.xml
和 test_result_failures.html
。
圖 30. 測試執行結果。
您可以在「記錄檔」分頁中查看即時主機和交易記錄檔。
圖 31.「Logs」分頁。
個別模組的結果會顯示在「Test Results」(測試結果) 分頁中。
圖 32.「Test Results」分頁。
您可以點選「Test Resources」分頁中的「Open」,下載用於測試資源的檔案。
圖 33. 「Test Resources」分頁。
如要查看測試執行作業的詳細資料 (例如 create_time),請前往「設定」分頁。
圖 34.「Config」分頁。
進階功能
管理設定檔
OmniLab ATS 使用以 YAML 編寫的設定檔來載入預先定義選項,例如測試、建構管道和裝置動作。以下是設定檔範例:
// example_file.yaml
tests:
- id : android.cts.9_0.arm
name: CTS 9.0 (ARM)
test_resource_defs:
- name: android-cts.zip
default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
test_resource_type: TEST_PACKAGE
command: cts
env_vars:
- name: TF_PATH
value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
- name: LD_LIBRARY_PATH
value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
setup_scripts:
output_file_patterns:
- android-cts/logs/latest/.*
- android-cts/results/latest/.*\.html
- android-cts/results/latest/compatibility_result\..*
- android-cts/results/latest/logo.png
- android-cts/results/latest/test_result.xml
result_file: test_result.xml
java_properties:
- name: CTS_ROOT
value: ${TF_WORK_DIR}
context_file_dir: android-cts/results/
context_file_pattern: '[\d_\.]+\.zip'
retry_command_line: retry --retry 0
runner_sharding_args: --shard-count ${TF_SHARD_COUNT}
build_channels:
- id: google_drive
name: Google Drive
provider_name: Google Drive
device_actions:
- id: flash
name: Flash
test_resource_defs:
- name: bootloader.img
test_resource_type: DEVICE_IMAGE
- name: radio.img
test_resource_type: DEVICE_IMAGE
- name: img.zip
test_resource_type: DEVICE_IMAGE
tradefed_target_preparers:
- class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
option_values:
- name: work-dir
values:
- ${TF_WORK_DIR}
- name: host-setup-command
values:
- adb -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL flash bootloader bootloader.img
- fastboot -s $SERIAL flash radio radio.img
- fastboot -s $SERIAL reboot-bootloader
- fastboot -s $SERIAL -w update img.zip
- adb -s $SERIAL wait-for-device
- name: host-cmd-timeout
values:
- 10m
設定 OmniLab ATS 執行個體時,可將設定匯出為檔案,與其他使用者共享。方法是前往「設定」頁面,然後按一下右上方的「匯出」。
圖 35. 設定檔管理。
下載設定檔後,請與其他使用者分享該檔案。 只要按一下「Import」並選取設定檔,即可將設定檔新增至 OmniLab ATS 執行個體。
建立新的裝置動作
裝置動作可用於自動執行裝置設定程序。「動作」是指在每次測試執行前,於每部裝置上執行的指令碼,包含重試前。如要查看可用的裝置動作清單,請前往「Settings」頁面,然後按一下「Device Actions」分頁標籤。系統已預先設定多項裝置動作,例如重新啟動和閃燈。
圖 36. 「裝置動作」分頁。
新增裝置動作
按一下「新增裝置動作」。
圖 37. 新裝置動作按鈕。
輸入名稱和說明。
圖 38. 裝置動作名稱。
按一下「新增指定目標準備人員」。
輸入 Trade Federation 目標預備工具完整類別名稱,例如
com.android.tradefed.targetprep.RunHostCommandTargetPreparer
。圖 39.新增目標準備工具。
如需可用目標準備工具的清單,請參閱 com.android.tradefed.targetprep 參考資料。
圖 40. 目標準備者清單。
新增要與目標準備工具搭配使用的任何選項。如要查看可用選項,請查看 targetprep,找到 Android 開放原始碼計畫每個目標準備工具的原始碼:
圖 41. 動作選項範例。
如要新增選項,請按一下「Add Target Preparer Option」,然後輸入必要值。
圖 42. 動作指令範例。
定義執行裝置動作所需的測試資源,例如建構用於刷新的映像檔。如要新增資源定義,請按一下「Add Test Resource」,然後填寫必填欄位。如果您知道檔案的所在位置,可以按一下「Browse」(瀏覽) 來提供預設的下載網址。如果目標準備工具接受目錄做為測試資源,請選取「Decompress」。接著,指定臨時工作目錄下方的相對「Destination」目錄,以及要解壓縮的「File Names」(檔案名稱)。如果未提供檔案名稱,系統會從測試資源中解壓縮所有檔案。
圖 43. 動作測試資源。
按一下「更新」。
圖 44. 儲存動作變更。
管理測試
編輯測試
如要編輯已儲存的測驗,請前往「測驗」頁面,然後在要修改的測驗資料列中按一下「編輯」。變更測試設定後,按一下「Update」。
圖 45. 編輯測試。
新增測試
如要新增測試,請前往「測試」頁面,然後點選「建立新測試」。輸入適當資訊,然後按一下「建立」。
圖 46. 建立測試。
圖 47. 複製測試。
匯出主機設定
設定主機後,您可以將主機的設定匯出至檔案。您可以將這個檔案上傳至其他主機,複製已儲存的設定。
如要匯出主機設定,請前往「設定」頁面,然後按一下右上角的「匯出」。
圖 48. 匯出主機設定。
如要匯入主機設定檔,請前往「設定」頁面,然後按一下右上角的「匯入」。
圖 49.匯入主機設定。
使用本機檔案和目錄
從 R11 版開始,$HOME/.ats_storage
目錄中的檔案會自動在 OmniLab ATS 中提供存取權。將檔案複製或移動至該目錄,然後在排定測試執行作業時,從「本機檔案」分頁中選取該檔案。
cp /path/to/file $HOME/.ats_storage
圖 50. 從 $HOME/.ats_storage
目錄選取檔案。
您可以使用 --mount_local_path
標記,將其他目錄掛載至本機檔案儲存空間。
mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2
圖 51. 本機檔案儲存庫中掛接的其他目錄。
啟用多主機模式
在多主機模式下,使用者可以使用單一 ATS 控制器主機,管理多個 ATS 工作站主機上的裝置和測試。
圖 52. 多主機模式架構。
如要啟動 ATS 控制器,請使用下列指令:
mtt start --operation_mode=ON_PREMISE
確認控制器是否可在
http://${CONTROLLER_HOSTNAME}:8000
上使用。如要啟動 worker,請使用下列指令:
mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
如果您的網路不允許主機互相通訊,則需要在 ATS 工作站上採用更進階的設定操作說明。
使用 SSH 安全殼層通道連線至兩個主機。選取主要和檔案伺服器的連接埠,例如 9000 和 9006。
ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
設定及啟動 ATS。
DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \ --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \ --operation_mode=ON_PREMISE
檔案清理工具
檔案清理工具是每小時執行一次的 cron 工作,可根據使用者定義的設定清理檔案。ATS 有兩種預設設定,可封存測試執行結果並刪除暫存檔。本指南說明如何自訂政策和設定,有效管理檔案。
政策
政策會定義要對檔案或目錄執行的作業,以及選取目標的條件。可用的運算作業如下表所示:
作業類型 | 參數 |
---|---|
ARCHIVE | remove_file :如果為 true ,請在封存檔案後移除檔案。 |
DELETE |
條件是根據檔案屬性和系統資訊而定。下表列出可用的篩選條件:
條件類型 | 說明 | 參數 |
---|---|---|
LAST_MODIFIED_TIME | 依據檔案上次修改的日期和時間篩選檔案。 | ttl :支援各種時間運算式,例如 10m 、2h 、7 days 、4w 。如要瞭解支援的格式,請參閱 pytimeparse 。 |
LAST_ACCESS_TIME | 根據上次存取日期和時間篩選檔案。 | 與 LAST_MODIFIED_TIME 相同。 |
NAME_MATCH | 使用規則運算式,根據檔案名稱進行篩選。 | pattern :規則運算式,例如 [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip ,用於比對結果 zip。 |
SYSTEM_AVAILABLE_SPACE | 根據系統的可用空間觸發動作。 | threshold :當可用空間低於閾值時觸發動作,例如 200 (B)、200KB 、200MB 、200GB 、2TB 。 |
圖 53. 新增檔案清理政策。
設定
設定會將一或多項政策與特定目錄結合。指定目錄中的檔案和目錄會根據定義的政策進行處理。系統會按照政策在設定檔中顯示的順序套用。
所有目標目錄都必須位於 /data
目錄下方。如果設定檔將目標目錄指定為 logs
,系統會將其解讀為 /data/logs
。
圖 54.編輯檔案清理工具設定。
重設
按一下「Reset Settings」,將檔案清理工具設定還原為預設狀態。這項操作會清除所有自訂項目。
圖 55. 重設檔案清理工具設定。
支援
錯誤報告
您對 OmniLab ATS 的貢獻有助於改善工具的開發作業,我們希望能獲得您的意見回饋!如需最新版本的詳細資訊,請參閱 OmniLab ATS 版本資訊。如要回報錯誤或提供建議,請提交錯誤報告。合作夥伴應透過合作夥伴管道回報錯誤或建議。