<ruby id="h6500"><table id="h6500"></table></ruby>
    1. <ruby id="h6500"><video id="h6500"></video></ruby>
          1. <progress id="h6500"><u id="h6500"><form id="h6500"></form></u></progress>
            • 軟件測試技術(shù)
            • 軟件測試博客
            • 軟件測試視頻
            • 開(kāi)源軟件測試技術(shù)
            • 軟件測試論壇
            • 軟件測試沙龍
            • 軟件測試資料下載
            • 軟件測試雜志
            • 軟件測試人才招聘
              暫時(shí)沒(méi)有公告

            字號: | 推薦給好友 上一篇 | 下一篇

            讓開(kāi)發(fā)自動(dòng)化: 持續檢查

            發(fā)布: 2008-6-13 15:18 | 作者: 不詳 | 來(lái)源: 測試時(shí)代編輯整理 | 查看: 122次 | 進(jìn)入軟件測試論壇討論

            領(lǐng)測軟件測試網(wǎng)

            代碼檢查可以采用不同的形式。有些企業(yè)使用正式的同級評審(peer review),在該評審過(guò)程中,開(kāi)發(fā)人員要為代碼提供同級評價(jià),并提供改進(jìn)意見(jiàn);其他一些企業(yè)使用結對編程;還有一些人則考慮使用高級設計決策和推薦的代碼改進(jìn)。有些團隊會(huì )在將代碼提交到版本控制存儲庫之前,讓其他開(kāi)發(fā)人員用 “桌面檢查” 的形式審查他們的代碼。

            不論企業(yè)采用哪種方式進(jìn)行代碼檢查,有一件事是肯定的:它們幾乎都是手工過(guò)程。正如我多年所觀(guān)察到的,手工過(guò)程很容易出錯,如果工作緊張,就會(huì )忘記自己正在做什么。但是,軟件檢查不必總是手工完成;實(shí)際上,有一大堆開(kāi)源工具和商業(yè)工具(我稱(chēng)之為軟件檢查器),可以用它們很方便地對代碼進(jìn)行靜態(tài)分析(這些工具也稱(chēng)為靜態(tài)分析工具)。

            使用軟件檢查器,代碼檢查可以通過(guò) Ant 或 Maven 這樣的構建工具來(lái)自動(dòng)完成。通過(guò)使用這種自動(dòng)化,一些低級的源代碼細節(如編碼標準、復雜性和重復程度等)的處理成為了機器的職責。這種職責轉移通過(guò)將重點(diǎn)轉向更高級的開(kāi)發(fā)方面(比如設計和長(cháng)期維護問(wèn)題)提高了人們手工檢查的效率。

            關(guān)于本系列
            作為開(kāi)發(fā)人員,我們的工作就是為用戶(hù)提供自動(dòng)化處理;但是,我們中的許多人卻忽視了自動(dòng)化自己的開(kāi)發(fā)過(guò)程的機會(huì )。出于這個(gè)目的,讓開(kāi)發(fā)自動(dòng)化 這一系列的文章專(zhuān)門(mén)研究了自動(dòng)化軟件開(kāi)發(fā)過(guò)程的實(shí)際應用,并教您什么時(shí)候如何 成功地應用自動(dòng)化。

            用軟件檢查器來(lái)解決問(wèn)題

            軟件檢查器有很多,范圍從復雜的商業(yè)工具到簡(jiǎn)單的開(kāi)源替代工具。但是,我發(fā)現其中三個(gè)特別有用,它們是 CheckStyle、CPD 和 JavaNCSS (請參閱 參考資料):

            • CheckStyle 報告與項目預定的編碼標準的偏離度。
            • CPD 報告代碼重復。
            • JavaNCSS 可以幫助團隊專(zhuān)注于更高級的代碼復雜性領(lǐng)域。
            所有這些工具都可以免費得到,而且易于集成到 Ant 或 Maven 這樣的構建平臺中,因此它們極易集成到持續集成(CI)系統中。

            什么是持續集成?

            持續集成(CI)是一種實(shí)踐,可以讓團隊在持續的基礎 上收到反饋并進(jìn)行改進(jìn),不必等到開(kāi)發(fā)周期后期才尋找和修復缺陷。諸如 CruiseControl 之類(lèi)的檢查工具是在后臺運行的,它們輪詢(xún)版本控制存儲庫,從中尋找更改之處。當發(fā)現某一更改時(shí),這類(lèi)工具就會(huì )通過(guò) Ant 執行預定義的構建腳本。持續檢查借助持續集成的實(shí)踐得以改進(jìn)。

            檢查器樣式標準

            我參與了幾家公司的委員會(huì ),花了很多時(shí)間來(lái)定義編碼標準。有一次,我們定義了幾乎沒(méi)人 遵守的 25 頁(yè)的編碼標準文檔。結果,我們的代碼審查非常痛苦,因為團隊要花時(shí)間來(lái)挑錯,看看開(kāi)發(fā)人員是否使用了兩個(gè)空格規則(與四個(gè)空格規則相對),以及是否將參數聲明為 final。如果把這些低級檢查工作交給軟件檢查器,我們會(huì )節省許多寶貴的時(shí)間。

            使用自動(dòng)的源代碼檢查工具(如 CheckStyle)可以提供執行可配置規則集的簡(jiǎn)單途徑,規則集可以根據項目的編碼標準而定。此外,可以通過(guò) CheckStyle 插件在 IDE 中運行 CheckStyle,CheckStyle 通過(guò)它的 Ant 任務(wù)或 Maven 插件直接集成到構建腳本中。CheckStyle 發(fā)現的所有規則偏離都會(huì )以報告的形式顯示,清楚地指出哪一個(gè)文件違規。除此之外,還可以將 Ant 和 Maven 配置成與 CheckStyle 相呼應,這樣,在違反規則時(shí),構建工作就會(huì )失敗。

            例如,清單 1 演示了 Ant 構建腳本的一個(gè)代碼段,它運行 CheckStyle 生成 HTML 報告。請注意 failOnViolation 屬性,在這里它被設為 false。如果將該屬性設為 true,則在發(fā)現任何 源代碼違規時(shí),構建都會(huì )失敗。

            延伸閱讀

            文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/

            TAG: 檢查 開(kāi)發(fā) 自動(dòng)化


            關(guān)于領(lǐng)測軟件測試網(wǎng) | 領(lǐng)測軟件測試網(wǎng)合作伙伴 | 廣告服務(wù) | 投稿指南 | 聯(lián)系我們 | 網(wǎng)站地圖 | 友情鏈接
            版權所有(C) 2003-2010 TestAge(領(lǐng)測軟件測試網(wǎng))|領(lǐng)測國際科技(北京)有限公司|軟件測試工程師培訓網(wǎng) All Rights Reserved
            北京市海淀區中關(guān)村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
            技術(shù)支持和業(yè)務(wù)聯(lián)系:info@testage.com.cn 電話(huà):010-51297073

            軟件測試 | 領(lǐng)測國際ISTQBISTQB官網(wǎng)TMMiTMMi認證國際軟件測試工程師認證領(lǐng)測軟件測試網(wǎng)

            老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
              <ruby id="h6500"><table id="h6500"></table></ruby>
              1. <ruby id="h6500"><video id="h6500"></video></ruby>
                    1. <progress id="h6500"><u id="h6500"><form id="h6500"></form></u></progress>