• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            Jenkins in OpenCASCADE

            Posted on 2017-12-03 12:15 eryar 閱讀(1296) 評論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            Jenkins in OpenCASCADE

            eryar@163.com

            Abstract. Jenkins是一個開源軟件項目,是基于Java開發的一個持續集成工具,用于監控持續復制的工作,旨在提供一個開放易用的軟件平臺,使軟件的持續集成變成可能。

            Key Words. OpenCASCADE, Jenkins

            1.Introduction

            OpenCASCADE的開發代碼量較大,如何確保程序的持續集成開發,保證質量,必須借助于工具了。像源碼的管理使用了Git,Bug管理使用了Mantis Bug Tracker, 還使用了Jenkins:

            https://tracker.dev.opencascade.org/view.php?id=25609

            wps_clip_image-18943

            關于Jenkins的功能介紹,以下內容轉換自:

            http://www.cnblogs.com/clsn/p/7944116.html

            wps_clip_image-15698

            Jenkins是一個用Java編寫的開源的持續集成工具。在與Oracle發生爭執后,項目從Hudson項目獨立。

            Jenkins提供了軟件開發的持續集成服務。它運行在Servlet容器中(例如Apache Tomcat)。它支持軟件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以執行基于Apache Ant和Apache Maven的項目,以及任意的Shell腳本和Windows批處理命令。Jenkins的主要開發者是川口耕介。Jenkins是在MIT許可證下發布的自由軟件。

            1.1.1 Jenkins功能

            1、持續的軟件版本發布/測試項目。

            2、監控外部調用執行的工作。

            1.2 怎么理解持續集成、持續交付、持續部署呢?

            1.2.1 持續集成

            持續集成(英語:Continuous integration,縮寫為 CI),一種軟件工程流程,將所有工程師對于軟件的工作復本,每天集成數次到共用主線(mainline)上。

            這個名稱最早由葛來迪·布區(Grady Booch)在他的布區方法中提出,但是他并沒有提到要每天集成數次。之后成為極限編程(extreme programming,縮寫為XP)的一部分。在測試驅動開發(TDD)的作法中,通常還會搭配自動單元測試。

            持續集成的提出,主要是為了解決軟件進行系統集成時面臨的各項問題,極限編程稱這些問題為集成地獄(integration hell)。

            wps_clip_image-28371

            持續集成主要是強調開發人員提交了新代碼之后,立刻進行構建、(單元)測試。根據測試結果,我們可以確定新代碼和原有代碼能否正確地集成在一起。簡單來講就是:頻繁地(一天多次)將代碼集成到主干。

            持續集成目的在產生以下效益如:

            ü 及早發現集成錯誤且由于修訂的內容較小所以易于追蹤,這可以節省項目的時間與成本。

            ü 避免發布日期的前一分鐘發生混亂,當每個人都會嘗試為他們所造成的那一點點不兼容的版本做檢查。

            ü 當單元測試失敗或發生錯誤,若開發人員需要在不除錯的情況下還原代碼庫到一個沒有問題的狀態,只需要放棄一小部分的更改 (因為集成的次數頻繁)。

            ü 讓 "最新" 的程序可保持可用的狀態供測試、展示或發布用。

            ü 頻繁的提交代碼會促使開發人員創建模塊化,低復雜性的代碼。

            ü 防止分支大幅偏離主干。如果不是經常集成,主干又在不斷更新,會導致以后集成的難度變大,甚至難以集成。

            1.2.2 持續交付

            持續交付(英語:Continuous delivery,縮寫為 CD),是一種軟件工程手法,讓軟件產品的產出過程在一個短周期內完成,以保證軟件可以穩定、持續的保持在隨時可以釋出的狀況。

            它的目標在于讓軟件的建置、測試與釋出變得更快以及更頻繁。這種方式可以減少軟件開發的成本與時間,減少風險。

            wps_clip_image-31570

            持續交付在持續集成的基礎上,將集成后的代碼部署到更貼近真實運行環境的「類生產環境」(production-like environments)中。比如,我們完成單元測試后,可以把代碼部署到連接數據庫的Staging 環境中更多的測試。如果代碼沒有問題,可以繼續手動部署到生產環境中。

            1.2.3 持續部署

            持續部署(英語:Continuous Deployment,縮寫為 CD),是持續交付的下一步,指的是代碼通過評審以后,自動部署到生產環境。

            有時候,持續部署也與持續交付混淆。持續部署意味著所有的變更都會被自動部署到生產環境中。持續交付意味著所有的變更都可以被部署到生產環境中,但是出于業務考慮,可以選擇不部署。如果要實施持續部署,必須先實施持續交付。

            wps_clip_image-26753

            持續部署即在持續交付的基礎上,把部署到生產環境的過程自動化。

            2.結論

            開源OpenCASCADE團隊使用的工具對提高代碼質量很有幫助,可以借鑒他們的開發方法。

            成人久久久观看免费毛片| 精品人妻伦一二三区久久| 午夜精品久久久久久影视777 | 亚洲第一极品精品无码久久| 少妇久久久久久久久久| 青青热久久综合网伊人| 亚洲精品成人久久久| 久久精品亚洲中文字幕无码麻豆| 欧洲精品久久久av无码电影| 久久er国产精品免费观看8| 欧美精品国产综合久久| 99久久精品午夜一区二区| 国产一级做a爰片久久毛片| 久久经典免费视频| 88久久精品无码一区二区毛片| 99精品久久久久久久婷婷| 国产福利电影一区二区三区久久久久成人精品综合 | 人妻精品久久久久中文字幕一冢本| 伊人色综合久久天天| 久久精品亚洲中文字幕无码麻豆 | 怡红院日本一道日本久久| 亚洲乱码精品久久久久..| 欧美日韩中文字幕久久久不卡| 精品综合久久久久久97超人| 囯产极品美女高潮无套久久久| 精品熟女少妇aⅴ免费久久| 久久96国产精品久久久| 婷婷伊人久久大香线蕉AV | 色偷偷偷久久伊人大杳蕉| 久久笫一福利免费导航 | 狠狠色丁香久久婷婷综合蜜芽五月 | 一本色综合久久| 久久精品国产2020| 久久AV高潮AV无码AV| 亚洲狠狠婷婷综合久久久久| 久久精品国产免费观看 | 久久精品国产2020| 亚洲va中文字幕无码久久| 久久香综合精品久久伊人| 久久婷婷五月综合色高清| 久久久久免费看成人影片|