[發明專利]用于在代碼審查期間顯示測試覆蓋數據的過程有效
| 申請號: | 201480068403.8 | 申請日: | 2014-12-11 |
| 公開(公告)號: | CN105830037B | 公開(公告)日: | 2018-01-12 |
| 發明(設計)人: | 馬爾科·伊萬科維奇;維奧拉·卡塔林·彼得拉;帕維爾·馬齊尼亞克 | 申請(專利權)人: | 谷歌公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 中原信達知識產權代理有限責任公司11219 | 代理人: | 李佳,穆德駿 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 代碼 審查 期間 顯示 測試 覆蓋 數據 過程 | ||
背景技術
在程序代碼審查期間,對于審查代碼的工程師而言,了解測試是否覆蓋一個特定代碼可以耗費相當多的時間和精力。工程師需要讀取正受測試的代碼和測試兩者,遵循代碼執行路徑,并且對于每行代碼確定是否執行了該行代碼。這種過程不但艱難,而且還容易出錯。
可替代地,代碼審查者可以要求代碼更改的作者手動運行現有代碼覆蓋計算器中的一種并且手動地向審查者報告結果。由于該過程涉及至少兩個執行手動步驟的人,因此該過程可能具有顯著的等待時間,尤其是如果審查者和代碼更改的作者在地理上彼此相距較遠。
發明內容
本發明內容簡要介紹了對構思的選取,以便提供對本公開的某些方面的基本了解。本發明內容不是對本公開的詳盡綜述,并且不旨在識別本公開的重要或者關鍵要素或者勾畫本公開的范圍。本發明內容僅僅提出了本公開的某些構思作為以下提供的具體實施方式的序言。
本公開大體涉及向用戶提供自動化服務的方法和系統。更具體地,本公開的各個方面涉及用于在代碼審查過程期間向用戶提供對于計算機代碼更改的測試覆蓋信息的自動化服務。
本公開的一個實施例涉及用于提供對于代碼更改的測試覆蓋數據的計算機實現方法,該方法包括:檢測到至代碼審查系統傳入的代碼更改;對傳入的代碼更改執行一個或者多個測試覆蓋計算;基于所執行的一個或者多個測試覆蓋計算,生成對于代碼更改的測試覆蓋數據;以及,將生成的對于代碼更改的測試覆蓋數據的通知發送至與代碼更改相關聯的至少一個接收方。
在另一實施例中,用于提供測試覆蓋數據的方法進一步包括:監測代碼審查系統有關代碼客戶端中的更改的通知;以及,基于接收的有關代碼客戶端中的更改的通知,檢測到傳入的代碼更改。
在另一實施例中,用于提供測試覆蓋數據的方法進一步包括:確定對傳入的代碼更改的先前版本執行了測試覆蓋計算;以及,基于確定了傳入的代碼更改不同于代碼更改的先前版本,對傳入的代碼更改執行一個或者多個更新的測試覆蓋計算。
在再一實施例中,用于提供測試覆蓋數據的方法進一步包括:比較傳入的代碼更改的快照與代碼更改的先前版本的快照;以及基于該比較,按照以下方式中的至少一種來確定傳入的代碼更改不同于代碼更改的先前版本:已經向代碼更改添加了一個或者多個新的測試;已經從代碼更改中去除了一個或者多個測試;除了測試代碼之外,已經向代碼更改添加了超過閾值量的新代碼;以及,除了測試代碼之外,已經從代碼更改中去除了超過閾值量的代碼。
在又一實施例中,用于提供測試覆蓋數據的方法進一步包括:接收對于提交至代碼審查系統的代碼更改的更新的測試覆蓋計算的請求,其中,在檢測到所提交的代碼更改之前,接收更新的測試覆蓋計算的請求;并且,響應于該請求,對所提交的代碼更改執行一個或者多個更新的測試覆蓋計算。
本公開的又一實施例涉及一種用于提供對于代碼更改的測試覆蓋數據的系統,該系統包括:一個或者多個處理器;以及,耦合至一個或者多個處理器的非暫時性計算機可讀介質,該非暫時性計算機可讀介質具有存儲在其上的指令,當指令由一個或者多個處理器執行時,該指令使一個或者多個處理器執行操作,該操作包括:檢測到至代碼審查服務的傳入的代碼更改;對傳入的代碼更改執行一個或者多個測試覆蓋計算;基于所執行的一個或者多個測試覆蓋計算,生成對于代碼更改的測試覆蓋數據;以及,將生成的對于代碼更改的測試覆蓋數據的通知發送至與代碼更改相關聯的至少一個接收方。
在另一實施例中,用于提供測試覆蓋數據的系統中的該一個或者多個處理器執行進一步的操作,該操作包括:監測代碼審查服務有關代碼客戶端中的更改的通知;以及,基于接收的有關代碼客戶端中的更改的通知,檢測到傳入的代碼更改。
在再一實施例中,用于提供測試覆蓋數據的系統中的該一個或者更多處理器執行進一步操作,該操作包括:確定對傳入的代碼更改的先前版本執行了測試覆蓋計算;以及,基于確定了傳入的代碼更改不同于代碼更改的先前版本,對傳入的代碼更改執行一個或者多個更新的測試覆蓋計算。
在再一實施例中,用于提供測試覆蓋數據的系統中的該一個或者更多處理器執行進一步操作,該操作包括:比較傳入的代碼更改的快照與代碼更改的先前版本的快照;以及,基于該比較,按照以下方式中的至少一種來確定傳入的代碼更改不同于與代碼更改的先前版本:已經向代碼更改添加了一個或者多個新的測試;已經從代碼更改中去除了一個或者多個測試;除了測試代碼之外,已經向代碼更改添加了超過閾值量的新代碼;以及,除了測試代碼之外,已經從代碼更改中去除了超過閾值量的代碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于谷歌公司,未經谷歌公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201480068403.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:用于訪問存儲器的存儲器裝置
- 下一篇:人機交互功能執行方法及終端





