上次在這里提到了敏捷開發(fā)scrum荧关,6、產(chǎn)品經(jīng)理和包工頭的故事褂傀,敏捷開發(fā)背景下忍啤,還有CI(持續(xù)集成)環(huán)境,持續(xù)交付和持續(xù)部署仙辟。
小奈:今天捅了個簍子同波,我只是叫開發(fā),修改個導(dǎo)航欄而已叠国。
也測試了未檩,沒想到發(fā)版后,所有列表的圖片顯示不了粟焊。
大仁:你們公司沒有CI環(huán)境冤狡?沒做好回歸測試,所以改了這個bug项棠,影響了原本的功能悲雳。
CI環(huán)境
持續(xù)集成環(huán)境,在敏捷開發(fā)背景下香追,誕生的合瓢,一天多次將代碼集成到主干。
有下面兩個好處:
- 快速發(fā)現(xiàn)錯誤
- 防止分支大幅偏離主干
持續(xù)集成的目的透典,就是讓產(chǎn)品可以快速迭代晴楔,同時還能保持高質(zhì)量顿苇。他的核心措施是,代碼集成到主干之前税弃,必須通過自動化測試纪岁。只要有一個測試用例失敗,就不能集成钙皮。
持續(xù)交付
持續(xù)交付(Continuous delivery)指的是蜂科,頻繁地將軟件的新版本顽决,交付給質(zhì)量團隊或者用戶短条,以供評審。
持續(xù)部署
持續(xù)部署(continuous deployment)是持續(xù)交付的下一步才菠,指的是代碼通過評審后茸时,自動部署到生產(chǎn)環(huán)境。
Jenkins
Jenkins是一個開源項目赋访,提供了一種易于使用的可都,持續(xù)集成系統(tǒng),使開發(fā)者從繁雜的集成中解脫出來蚓耽,專注于業(yè)務(wù)實現(xiàn)上渠牲。同時Jenkins能實施監(jiān)控,集成過程中存在的錯誤步悠,提供日志文件和提醒功能签杈,還能用圖表展示項目,構(gòu)建的趨勢和穩(wěn)定性鼎兽。
安裝Jenkins&各種插件
java -jar jenkins.war --httpPort=8080
jenkins可以適用于各種開發(fā)環(huán)境答姥,iOS、Android谚咬、Java等等鹦付,只需要你安裝插件,
Jenkins + gitlab集成
Jenkins+gitlab集成后择卦,就可以實現(xiàn)敲长,提交代碼到git后,jenkins自動構(gòu)建(自動化很關(guān)鍵)