【11】進大廠必須掌握的面試題-持續整合面試

Java架構師社群發表於2020-10-19

Q1。持續整合是什麼意思?

我將建議您通過對持續整合(CI)進行小的定義來開始此答案。這是一種開發實踐,要求開發人員每天多次將程式碼整合到共享儲存庫中。然後,每個簽入均由自動構建進行驗證,從而使團隊能夠及早發現問題。
我建議您說明您在上一份工作中是如何實施的。您可以參考以下給出的示例:

Jenkins獨立架構-Devops面試問題

在上圖所示的圖中:

  1. 開發人員將程式碼檢出到其專用工作區中。
  2. 完成後,將更改提交到共享儲存庫(版本控制儲存庫)。
  3. CI伺服器監視儲存庫,並在發生更改時簽出更改。
  4. 然後,CI伺服器提取這些更改並構建系統,並執行單元測試和整合測試。
  5. CI伺服器現在將通知團隊成功的構建。
  6. 如果構建或測試失敗,則CI伺服器將警告團隊。
  7. 該小組將盡早解決此問題。
  8. 這個過程不斷重複。

Q2。為什麼需要開發與測試的持續整合?

對於此答案,您應重點關注持續整合的需求。我的建議是在您的答案中提及以下解釋:
開發和測試的持續整合通過在完成所有開發後替換傳統的測試實踐,提高了軟體的質量,並縮短了交付軟體的時間。由於開發人員需要每天(多次)將程式碼整合到共享儲存庫中,因此開發團隊可以輕鬆地及早發現並定位問題。然後將自動測試每個簽入。

Q3。持續整合的成功因素是什麼?

在這裡,您必須提及持續整合的要求。您可以在回答中包括以下幾點:

  • 維護程式碼庫
  • 自動化構建
  • 使構建自檢
  • 每個人每天都致力於基線
  • 每次提交(到基線)都應該構建
  • 保持快速構建
  • 在生產環境的克隆中進行測試
  • 輕鬆獲取最新交付物
  • 每個人都可以看到最新版本的結果
  • 自動化部署

Q4。解釋如何將Jenkins從一臺伺服器移動或複製到另一臺伺服器?

我將通過將作業目錄從舊伺服器複製到新伺服器來完成此任務。有多種方法可以做到這一點。我在下面提到了它們:
您可以:

  • 只需複製相應的作業目錄,即可將作業從一個Jenkins安裝移至另一安裝。
  • 通過使用不同的名稱克隆作業目錄來複制現有作業。
  • 通過重新命名目錄來重新命名現有作業。請注意,如果您更改作業名稱,則將需要更改任何其他嘗試呼叫重新命名作業的作業。

Q5。解釋如何在Jenkins中建立備份和複製檔案?

這個問題的答案確實是直接的。要建立備份,您需要做的就是定期備份JENKINS_HOME目錄。這包含所有構建作業配置,從屬節點配置以及構建歷史記錄。要建立您的Jenkins設定的備份,只需複製此目錄。您還可以複製作業目錄以克隆或複製作業或重新命名目錄。

Q6。解釋如何設定Jenkins工作?

我要回答這個問題的方法是首先提到如何建立Jenkins工作。轉到Jenkins主頁,選擇“新建作業”,然後選擇“構建自由樣式的軟體專案”。
然後,您可以說出此自由式作業的元素:

  • 原始碼所在的可選SCM,例如CVS或Subversion。
  • 可選觸發器,用於控制Jenkins何時執行構建。
  • 某種執行實際工作的構建指令碼(ant,maven,shell指令碼,批處理檔案等)。
  • 從構建中收集資訊的可選步驟,例如,歸檔工件和/或記錄javadoc和測試結果。
  • 通知其他人員/系統構建結果的可選步驟,例如傳送電子郵件,IM,更新問題跟蹤器等。

Q7。在Jenkins中提及一些有用的外掛。

下面,我提到了一些重要的外掛:

  • Maven 2 project
  • Amazon EC2
  • HTML publisher
  • Copy artifact
  • Join
  • Green Balls

我覺得這些外掛是最有用的外掛。如果要包括上面未提及的任何其他外掛,也可以新增它們。但是,請確保首先提及上述外掛,然後新增您自己的外掛。

Q8。您將如何保護Jenkins?

下面提到我保護Jenkins的方法。如果您還有其他方法,請在下面的評論部分中提及:

  • 確保啟用全域性安全性。
  • 確保使用適當的外掛將Jenkins與我公司的使用者目錄整合。
  • 確保已啟用矩陣/專案矩陣以微調訪問。
  • 使用自定義版本控制指令碼在Jenkins中自動設定許可權/特權的過程。
  • 限制對Jenkins資料/資料夾的物理訪問。
  • 定期對其進行安全稽核。

歡迎關注 Java架構師社群公眾號.
本文轉載自Java架構師必看 ,更多內容點選檢視!

相關文章