国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

教你如何快速捕獲.NET代碼中隱藏的BUG

2024-07-10 13:08:53
字體:
來源:轉載
供稿:網友

  團隊開發的一個方面就是在將所有的改動合并到中心資料庫之前,允許單獨的開發者在本地編寫并構建(build)有特色的代碼。開發者可以在本地測試與調試最新的版本,并且可以保證他們所有的工作代碼可以與其他同事的協同工作,他們可以手動測試這些代碼,但是更好的辦法就是將這一過程自動化并且提供即時反饋,其中一個非常優秀的解決方案就是持續集成。

  持續集成

  對于應用軟件開發團隊而言,有很多提高產品質量和效率的思想,其中的一種思想就是被稱作持續集成的方法,持續集成的一個前提就是即時反饋。持續集成的一種最簡單的形式就是由一個開發者完成所有的工作,因為所有的改變都是立即可見的,因此,單個開發者在他們出現問題的時候就能知道這個問題的存在,當同樣的方法應用到團隊環境中,實時方式就會成為一個問題。

  持續集成最大的特色在于當開發者提交他們工作的時候 ,可以減少其他開發者用于檢測bug的時間,而往往非常難以追蹤到由這些bug所導致的問題的根源,因為問題通常是由于集成了新的代碼所致,因集成而出現的bug可能在出現問題之前已經被嵌入到代碼中很久了,與其花費時間去追蹤這些bug還不如花在別的項目上,關鍵是要盡早地發現問題。

  在持續集成方法的幫助下,絕大部分bug可以在引入代碼的時候被發現,因為這些“嫌疑犯”(開發者的代碼)是在他們提交新代碼之后才出現了錯誤,所以更加明顯。因此,少花些時間在追蹤這些錯誤上,開發者就能有更多的時間解決他們自己的問題,最終的結果是生產效率的提高,但這種方法也依賴于構建新版本的頻率,從而向開發人員提供有價值的反饋。

  何時進行構建(build)?

  我還記得多年前曾工作過的項目,進行一次構建需要大量的時間和精力,要提醒開發人員遞交他們的代碼,而且手動的構建過程非常緊張,很自然的,當對開發團隊的代碼進行構建的時候,錯誤就搖頭擺尾地出現了,追蹤這些問題是需要時間的,并且希望能沿著正確的方向去解決問題,這樣才能獲得成功,而這一過程所需的時間往往導致了構建次數的減少,但是,多次構建更易于從持續集成中受益。

  如果您想知道一個成功構建的條件是什么,答案視乎您的項目和環境而決定,但是我經常將它定義為所有的源文件都成功編譯、部署并且一系列測試都在系統中獲得成功,您需要一系列工具來實現這些工作,雖然自動測試(automated testing)并不是必需的,但是我強烈推薦這種方法。

  工具

  以下是在.net環境中建立與運行持續集成方法所必需的幾本工具列表:

  ·源代碼控制:這允許多個程序員通過提交、調出和添加新文件對應用軟件代碼的協同工作,visual sourcesafe是一種流行的選擇,但還有很多更好的選擇,比如subversion,ibm's rational clearcase,cvs和sourcegear vault。

  ·編譯器:您可以使用.net框架的命令行編譯器、visual studio .net或其他的集成開發環境。

  ·持續集成服務器:這是構建過程的主要控制器,它負責監控為程序員提交代碼使用的源代碼資源庫,當加入新的代碼時,最新的版本將被取回,構建過程也就取消了,持續集成過程的最后一步是通過電子郵件、網頁等形式向整個團隊通報構建的狀態。有很多工具都可以實現這一步驟,我比較喜歡cruisecontrol.net,另一個選擇是免費的draco.net,您需要一個專門的服務器來實現這一步驟。

  ·自動構建工具:用于源代碼的自動構建的工具是必不可少的,免費的nant是一個很棒的選擇,或者您可以使用一個程序生成工具,如果您使用的是cruisecontrol.net的最新版本,則可以和visual sourcesafe直接對話,這樣就不需要像nant這樣的自動構建工具了。

  ·選擇性單元測試:在集成階段應用單元測試可以幫助驗證正常工作的代碼,一個非常出色的工具是nunit,它是免費的而且在網上有大量的相關信息。

  注意:安裝與設置這些工具的內容已經超出了這篇文章的范圍,但是每個產品的網絡社區所提供的文檔中包含了您使用這些產品所需的信息。

  您準備好使用持續集成了么?

  持續集成并不是針對缺陷代碼的靈丹妙藥,但它絕對可以釋放出您寶貴的時間去應付更緊張的問題,開發人員依然需要編寫強壯的代碼并進行良好的單元測試,另外,代碼應該按照規則進行提交(我建議每日提交),然而,使用持續集成可以幫助您驗證代碼、測試、設計等的質量,持續集成能幫助您節省出原本用于構建的時間,但您需要一些時間去設置和管理專門用于持續集成的服務器。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 那坡县| 买车| 泸水县| 沙田区| 胶南市| 哈尔滨市| 扶风县| 揭阳市| 浠水县| 台中市| 交口县| 昂仁县| 海城市| 阳高县| 东明县| 山东省| 绥滨县| 紫阳县| 伊川县| 洞头县| 柳江县| 新巴尔虎左旗| 马山县| 同心县| 凌海市| 阿拉善盟| 团风县| 奉贤区| 德兴市| 永城市| 若尔盖县| 琼中| 定西市| 肃北| 阿克苏市| 乐业县| 内江市| 斗六市| 台州市| 资阳市| 吉隆县|