谷歌致力於推進種族平等的黑人社區。 怎麼看。
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

貿易聯合會簡介

貿易聯合會(Tradefed或TF的簡稱)是一個連續的測試框架設計用於在Android設備運行測試。例如,Tradefed用於運行所述兼容性測試套件(CTS)賣方測試套件(VTS) 。

貿易聯合會是一個運行在主機上的Java應用程序,以及一個或使用ddmlib(後面DDMS庫)在亞行更多的Android設備進行通信。

我們列出了一些的TF的以下主要特點,與一對夫婦樣本usecases一起。這就是說,如果你想跳的權利並開始使用,你可以徑直前往這裡開始頁面。

特徵

  • 模塊化的,靈活的,可擴展的設計
  • 已經內置支持運行許多不同類型的Android的測試: 儀器儀表uiautomator ,本地/ GTEST,基於主機的JUnit中,等
  • 提供ADB的頂部可靠性和恢復機制
  • 支持並行地對多個設備的調度和運行測試

測試通過TF有關如何運行現有的測試,如最先進的最新信息, 儀器儀表

用例

貿易聯盟的模塊化使得它可以直接插槽與現有的構建,測試和報告的基礎設施環境。我們在下面列出了幾個示範usecases其中tradefed可以使高效,可擴展的測試規範。

首先,它是有用的考慮潛在usecases的景觀問題的條款“,這部分是修改的,哪些部分是靜態的?”例如,設備OEM可以修改框架,系統和硬件,但在現有的應用程序很少或沒有影響。應用程序開發人員,而另一方面,可以修改應用程序,但對系統擁有或框架的許多方面難以控制。

其結果是,在每個用例的實體將擁有不同的測試目標,將有一組測試失敗的情況下,不同的選擇。儘管存在這些差異,貿易聯盟可以幫助他們的每一個測試過程的高效,靈活和可擴展的。

設備OEM

A設備OEM構建硬件,並經常調整Android系統和框架,在該硬件上很好地運行。 OEM廠商可能會努力實現這些目標,同時在硬件和系統級保持穩定性和性能,並確保架構更改不會破壞現有的應用程序的兼容性。

OEM廠商可以實現一個設備閃爍的模塊,將在的目標設置階段執行的生命週期 。該模塊將具有優於在其執行週期的裝置,該裝置將允許它的設備潛在地迫使進入bootloader,閃光,然後強制重新啟動設備返回到用戶空間模式的完全控制。與模塊綁成一個持續構建系統相結合,這將允許OEM為他們更改系統級固件和Java一級框架運行他們的設備上測試。

一旦設備被完全啟動時,OEM將能夠充分利用現有的基於JUnit的測試,或者編寫新的,以驗證所關注的功能。最後,他們可以寫一個或多個結果的報告模塊綁到現有的測試結果庫,或直接報告的結果(例如, 通過電子郵件 )。

應用開發者

應用程序開發人員構建一個需要跨多種平台的版本和各種設備的運行良好的應用程序。如果一個問題在特定平台上的版本和/或設備出現時,唯一的解決方法是增加一個解決辦法,繼續前進。對於較大的開發者,測試過程可以被併入到連續生成序列。對於規模較小的開發商,它可能會定期或用手拉開序幕。

大多數應用程序開發人員將使用已經在TF存在的APK安裝測試模塊。有一個版本, 從本地文件系統安裝 ,以及能夠在版本上安裝的APK從構建服務下載 。後者的版本會繼續與在同一台主機上運行任意多個TF情況下正常工作,這是需要注意的重要。

因為TF的在處理與多個設備的熟練,這將是直接的由該用於該測試設備的類型每個測試結果進行分類。因此,TF可能產生用於所述應用程序的每個構建一個2維(或多維的)相容性基質中。

測試服務

一個測試服務可能,例如,允許應用程序開發人員提交與功率測量工具儀器來確定應用程序電源使用設備的應用程序和運行測試。這不同於在服務構建器不控制設備或正在運行的應用程序前兩個usecases。

由於貿易聯合會可以運行任何Java類,它實現了簡單的IRemoteTest接口,是微不足道的寫驅動程序,可以協調與同時被在設備上運行的測試情況下,一些外部的硬件。該驅動程序本身可以產生線程,請求發送到其他服務器,或做任何事情,這可能需要。此外,結果報告界面,的簡單性和通用性ITestInvocationListener ,意味著它是同樣直接地表示任意的測試結果(包括,例如,數值功率度量)轉換成標準結果報告管道。