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

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架構師必看 ,更多內容點擊查看!

Tags: