軟體開發與專案管理

關於持續整合(CI)的說明,下列何者適當?

  1. A在開發的最後,將每個人花長時間所做的變更一併整合,一次進行整合測試
  2. B開發人員頻繁地(一天多次)將變更整合到共用分支,每次都執行建置與自動測試,以及早發現問題
  3. C將通過測試的變更,不經人工判斷自動發布到正式環境
查看答案與解析

正確答案:B. 開發人員頻繁地(一天多次)將變更整合到共用分支,每次都執行建置與自動測試,以及早發現問題

在持續整合中,會將變更以小而頻繁的方式整合,每次整合時都在伺服器上自動執行建置與單元測試等。由於整合的間隔短,變更之間的衝突或缺陷能在原因仍容易判斷時就找出並修正。另一個優點是,每次變更都能自動進行將既有測試全部重新執行的迴歸測試。將通過測試的變更自動發布到正式環境的是持續部署,屬於 CI 之後的階段。

  • A. 這是將長時間累積的變更在最後一次整合的做法,會使缺陷原因難以找出。CI 正是為了避免這種情況。
  • B. 正確。頻繁整合小變更,每次都自動進行建置與測試。
  • C. 這是持續部署的說明。CI 指的是到整合與建置、測試自動化為止。
練習這個領域 前往領域頁面

相關計算工具

軟體開發與專案管理的其他題目

  1. 關於持續交付與持續部署的差異,下列說明何者適當?
  2. 某業務系統的需求中,屬於非功能需求的是下列何者?
  3. 在 UML 中,像電鍋的控制軟體那樣,要表示物件的狀態如何隨事件(按下按鈕、計時器到期、達到溫度等)而改變時,適合使用的圖為下列何者?
  4. 在 UML 中,將多個物件之間往來的訊息(呼叫或回應)依時間順序由上往下排列表示的圖為下列何者?
  5. 在評估模組獨立性的模組強度(內聚力)中,強度最高、被認為最理想的是下列何者?