[發明專利]獲取編譯時長的方法和裝置有效
| 申請號: | 202110579898.2 | 申請日: | 2021-05-26 |
| 公開(公告)號: | CN113326046B | 公開(公告)日: | 2023-09-26 |
| 發明(設計)人: | 石磊 | 申請(專利權)人: | 網易(杭州)網絡有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京博浩百睿知識產權代理有限責任公司 11134 | 代理人: | 趙昀彬 |
| 地址: | 310000 浙江省杭州*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 獲取 編譯 方法 裝置 | ||
本發明公開了一種獲取編譯時長的方法和裝置。其中,該方法包括:獲取待編譯的目標代碼;通過運行測試腳本,多次執行清除測試對象的編譯緩存并編譯所述目標代碼的步驟,得到多個編譯時長;在多次編譯結束后,利用所述多個編譯時長統計得到所述目標代碼的目標編譯時長。本發明解決了現有技術中獲取的代碼編譯時長不準確的技術問題。
技術領域
本發明涉及計算機領域,具體而言,涉及一種獲取編譯時長的方法和裝置。
背景技術
在移動端項目開發過程中,隨著項目不斷迭代,功能逐漸增加,勢必會引起編譯時長或代碼文件的增多;當工程師嘗試對項目進行一些優化后,需要確認這些優化是否會減少項目的編譯時長,因此需要統計代碼的編譯時長。
目前,以iOS為例,在移動端的iOS開發中,使用Xcode軟件進行項目開發,在嘗試對項目進行一些優化后,由于再次編譯成功可能會使用到增量編譯,且在編譯過程中容易受到很多情況的干擾,因此可能會導致獲得的編譯時長并不準確。
針對現有技術中獲取的代碼編譯時長不準確的問題,目前尚未提出有效的解決方案。
發明內容
本發明實施例提供了一種獲取編譯時長的方法和裝置,以至少解決現有技術中獲取的代碼編譯時長不準確的技術問題。
根據本發明實施例的一個方面,提供了一種獲取編譯時長的方法,包括:獲取待編譯的目標代碼;通過運行測試腳本,多次執行清除測試對象的編譯緩存并編譯目標代碼的步驟,得到多個編譯時長;在多次編譯結束后,利用多個編譯時長統計得到目標代碼的目標編譯時長。
進一步地,獲取目標代碼,包括:接收目標代碼的屬性信息,其中,屬性信息包括:目標代碼的路徑和目標代碼的標識;通過測試腳本根據目標代碼的路徑以及目標代碼的標識查找到目標代碼。
進一步地,通過運行測試腳本多次清除測試對象的編譯緩存,并編譯目標代碼,得到多個編譯時長,包括:通過測試腳本中的緩存清除命令清除測試對象的緩存;通過測試腳本根據目標代碼的類型確定目標代碼的編譯命令,并根據編譯命令編譯目標代碼;在編譯完成目標代碼之后,獲得此次編譯的編譯時長,并判斷目標代碼的編譯次數是否到達預設值;在目標代碼的編譯次數到達預設值的情況下,確定編譯結束;在目標代碼的編譯次數未到達預設值的情況下,重新進入通過測試腳本中的緩存清除命令清除測試對象的緩存的步驟。
進一步地,利用多個編譯時長統計得到目標代碼的目標編譯時長,包括:清除多個編譯時長中的最大值和最小值,得到剩余的多個編譯時長;獲取剩余的多個編譯時長的平均值,并確定剩余的多個編譯時長的平均值為目標代碼的目標編譯時長。
進一步地,在通過運行測試腳本,多次執行清除測試對象的編譯緩存并編譯目標代碼的步驟,得到多個編譯時長之前,上述方法還包括:確定用于運行目標代碼的測試對象的類型,其中,測試對象的類型包括:真機和模擬器;以及獲取測試對象所提供的測試環境,其中,測試環境包括:機型信息和系統版本信息。
進一步地,確定用于運行目標代碼的測試對象的類型,包括:在檢測到測試對象的類型確定信息的情況下,根據類型確定信息確定測試對象的類型;在未檢測到測試對象的類型確定信息的情況下,確定測試對象的類型為模擬器。
進一步地,在測試對象的類型為真機的情況下,獲取測試對象所提供的測試環境,包括:獲取真機的唯一識別碼,并根據唯一識別碼確定當前測試所使用的測試對象;讀取測試對象的機型信息和系統版本信息。
進一步地,在測試對象的類型為模擬器的情況下,獲取測試對象所提供的測試環境,包括:在接收到測試環境信息的情況下,獲取測試環境信息所指示的測試環境;在未接收到測試環境信息的情況下,確定測試環境為模擬器所兼容的最新的機型和最高版本的系統。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于網易(杭州)網絡有限公司,未經網易(杭州)網絡有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110579898.2/2.html,轉載請聲明來源鉆瓜專利網。





