qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問 http://qaseven.github.io/

          持續(xù)集成:軟件質(zhì)量改進(jìn)和風(fēng)險(xiǎn)降低之道

            問題

            在軟件行業(yè)發(fā)展的初期,軟件項(xiàng)目中最棘手、最緊張的時(shí)刻就是集成。單獨(dú)能工作的一些模塊被組裝在一起,系統(tǒng)整體卻常常失敗,而且很難找到失敗的原因。

            解決辦法

            解決辦法的關(guān)鍵在于更為頻繁地進(jìn)行集成。

            它給項(xiàng)目帶來了完全不同的感覺。項(xiàng)目的可見性變得好了很多,因?yàn)閱栴}能夠更快地檢測(cè)出來。引入缺陷和發(fā)現(xiàn)缺陷之間的時(shí)間間隔變短,就更容易發(fā)現(xiàn)缺陷,您可以很容易地看見改變了什么,以方便找到問題的根源。當(dāng)它與良好的測(cè)試程序配合時(shí),可以大大減少缺陷的數(shù)量。結(jié)果是,開發(fā)者在調(diào)試上花的時(shí)間減少了,在增加功能上花的時(shí)間更多了,他們相信自己是在一個(gè)堅(jiān)實(shí)的基礎(chǔ)上開發(fā)軟件。

            持續(xù)集成意味著:

            ● 所有開發(fā)者都先在他們自己的工作站上執(zhí)行私有構(gòu)建,然后再將他們的代碼提交到版本控制庫中,從而確保他們的變更不會(huì)導(dǎo)致集成構(gòu)建失敗。

            ● 開發(fā)者每天至少向版本控制庫提交一次代碼。

            ● 集成構(gòu)建每天在一臺(tái)獨(dú)立的計(jì)算機(jī)上進(jìn)行多次。

            ● 每次構(gòu)建都必須 100%通過測(cè)試。

            ● 生成可以進(jìn)行功能測(cè)試的產(chǎn)品(如 WA R、配件、可執(zhí)行程序等)。

            ● 修復(fù)失敗的構(gòu)建是優(yōu)先級(jí)最高的事情。

            ● 某些開發(fā)者復(fù)查構(gòu)建生成的報(bào)告,如編碼標(biāo)準(zhǔn)報(bào)告和依賴分析報(bào)告,尋找可以改進(jìn)的地方。

            最佳實(shí)踐

            為缺陷編寫測(cè)試

            當(dāng)缺陷被發(fā)現(xiàn)時(shí),找出并隔離有問題的代碼,為了修復(fù)缺陷,我們基本上需要破壞測(cè)試,先編寫一個(gè)會(huì)失敗的測(cè)試用例,然后不斷執(zhí)行這個(gè)測(cè)試(在修復(fù)缺陷的過程中),直到測(cè)試不再失敗為止。

            讓組件測(cè)試可重復(fù)

            數(shù)據(jù)庫對(duì)于測(cè)試來說是相當(dāng)沉重的依賴關(guān)系,所以您有兩種選擇:要么盡量地進(jìn)行模擬,在盡可能長(zhǎng)的時(shí)間內(nèi)完全避免使用數(shù)據(jù)庫,要么使用數(shù)據(jù)庫并承受其開銷。實(shí)現(xiàn)這種測(cè)試最容易的方法是使用某種xDbUnit 這樣的數(shù)據(jù)庫填充框架(如

            針對(duì).NET 的NDbUnit、針對(duì) Java 的DbUnit 、針對(duì) Python 的PDbSeed )。這些框架將數(shù)據(jù)庫的數(shù)據(jù)集抽象到 XML 文件中,然后為開發(fā)者提供細(xì)粒度的控制,即在測(cè)試過程中如何將這些數(shù)據(jù)填充到數(shù)據(jù)庫中。

          posted on 2012-08-31 10:05 順其自然EVO 閱讀(149) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2012年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 紫云| 天柱县| 肇州县| 蒙山县| 林周县| 黔江区| 芦溪县| 合川市| 彰化市| 崇义县| 镇安县| 金秀| 灌南县| 金门县| 宁化县| 安多县| 比如县| 祁东县| 蒲城县| 开远市| 沙河市| 邢台市| 金沙县| 肥东县| 象山县| 尉犁县| 揭阳市| 望城县| 溧水县| 吴堡县| 松原市| 卓资县| 陕西省| 滨州市| 新竹市| 铅山县| 云阳县| 武山县| 满洲里市| 漳平市| 平远县|