為讓貢獻非核心 src 的團隊完全掌握審查程序,我們已建立下列專案,並開放所有團隊 +2 權限。這樣一來,核心 Tradefederation 團隊就不必負責所有與核心架構無關的程式碼審查,其他團隊也能在審查週期中更快完成疊代。
非核心 src 定義為 tradefederation 架構運作不需要的程式碼 (例如自訂測試、設定、特定測試公用程式)。
重要事項:非核心 src 不應擴充核心 tradefederation 類別。 這麼做會影響日後的重構/清除作業。如果您不確定程式碼應屬於核心或貢獻,請傳送電子郵件至 android-tradefed@ 尋求協助。核心 tradefederation 團隊很樂意提供建議,並接受功能要求。
核心 TradeFederation 類別的範例可以是
com.google.android.tradefed.build
套件中的任何類別,例如:com.google.android.tradefed.build.LaunchControlProvider
同樣地,如果您不清楚哪些是 android-tradefed@ 的核心類別,請與我們聯絡。
[TOC]
Contrib 專案的路徑
這些貢獻專案的適用對象是誰?
如果您目前在 tradefederation 專案中編寫測試/測試公用程式/設定,這些專案是為您建立的。
貢獻專案中的程式碼審查
貢獻專案的目標是讓您在 Tradefed 中進行開發,不必經過核心團隊 (android-tradefed@) 的審查。因此,我們希望您的團隊或熟悉您情境的任何人,都能對您的 CL 執行程式碼審查。
如果遇到困難或需要特定案例的指引,歡迎隨時與 android-tradefed@ 聯絡,但請勿預設由該團隊在 contrib 中進行程式碼審查。就貢獻內容的程式碼審查而言,Tradefed 團隊沒有服務水準目標。
我可以在哪裡開始處理這些專案?
這些專案已新增至下列分支版本資訊,且已成為主要平台結帳程序的一部分,因此如果您在環境中看不到這些專案,只要進行存放區同步,即可開始貢獻。
- main
- tradefed
- oc-dev
- oc-dev-plus-aosp
- nyc-mr2-dev-plus-aosp
- main-daydream-dev
- main-without-vendor
- wear-main
開發和測試
在 contrib 中開發時,品質標準應與 Android 存放區其他位置相同:
- 遵守 Android 格式規範
- 測試程式碼並連同測試一併提交
- 設計貼心且合理
如何在 contrib 中進行本機測試?
Android 開放原始碼計劃
在 AOSP 中,contrib 的單元測試位於 platform/tools/tradefederation/contrib/tests/src/ ,單元測試應新增至 com.android.tradefed.prodtests.UnitTests ,以便在預先提交和本機測試指令碼中挑選。
執行 lunch 後的 AOSP 本機指令碼:
tools/tradefederation/core/tests/run_tradefed_aosp_presubmit.sh
建構規則更新至貢獻專案
建構規則 (makefile) 位於專屬的 build/
資料夾中,並由 OWNERS
檔案鎖定,因此如未經核心團隊額外審查,您就無法修改這些規則。這是對 contrib 專案的唯一限制。
我們需要進行這項審查,確保核心團隊不知情或未同意的情況下,不會在整體 Tradefed 專案中加入非預期的依附元件。如確實需要新增某些依附元件,請聯絡 android-tradefed@
,瞭解您的用途並取得建議。