【12】進大廠必須掌握的面試題-持續測試面試

Q1。什麼是連續測試?

我將建議您遵循以下提到的解釋:
連續測試是作為軟體交付管道的一部分執行自動測試的過程,以獲得與最新版本相關的業務風險的即時回饋。這樣,每個構建都將得到持續測試,從而使開發團隊能夠快速獲得回饋,從而可以防止這些問題發展到軟體交付生命周期的下一個階段。由於無需手動重建項目並在進行更改後重新運行所有測試,因此,這極大地加快了開發人員的工作流程。

Q2。什麼是自動化測試?

自動化測試或測試自動化是使手動過程自動化以測試被測應用程式/系統的過程。自動化測試涉及使用單獨的測試工具,使您可以創建可重複執行且不需要任何手動干預的測試腳本。

Q3。 自動化測試的好處是什麼?

我列出了自動化測試的一些優點。將這些內容包含在您的答案中,您可以添加自己的經驗,了解持續測試如何幫助您之前的公司:

  • 支援重複測試用例的執行
  • 幫助測試大型測試矩陣
  • 啟用並行執行
  • 鼓勵無人值守的執行
  • 提高準確性,從而減少人為錯誤
  • 節省時間和金錢

Q4。如何在DevOps生命周期中自動化測試?

我在下面提到了一個通用流程,您可以在其中參考:
在DevOps中,開發人員必須將對源程式碼所做的所有更改提交到共享存儲庫。每次更改程式碼後,Jenkins等持續集成工具都會從此共享存儲庫中提取程式碼,並將其部署到由Selenium等工具完成的持續測試中,如下圖所示。
這樣,與傳統方法不同,可以連續測試程式碼中的任何更改。

自動化測試-devops面試問題

Q5。為什麼連續測試對DevOps很重要?

您可以這樣回答這個問題:「連續測試允許立即對程式碼中所做的任何更改進行測試。這樣可以避免由於在周期結束時進行「大爆炸」測試而產生的問題,例如發布延遲和品質問題。這樣,連續測試有助於更頻繁,更優質的發布。」

Q6。連續測試工具的關鍵要素是什麼?

連續測試的關鍵要素是:

  • 風險評估:涵蓋風險緩解任務,技術債務,品質評估和測試覆蓋率優化,以確保構建準備好進行到下一個階段。
  • 策略分析:確保所有流程與組織不斷發展的業務保持一致,並滿足合規性要求。
  • 需求可追溯性:它確保滿足真正的需求並且不需要返工。對象評估用於確定哪些需求處於危險之中,按預期工作或需要進一步驗證。
  • 高級分析:它在諸如靜態程式碼分析,變更影響分析和範圍評估/優先順序等領域中使用自動化,以首先防止缺陷並在每次迭代中完成更多工作。
  • 測試優化:確保測試產生準確的結果並提供可行的結果。方面包括測試數據管理,測試優化管理和測試維護
  • 服務虛擬化:確保訪問真實的測試環境。通過服務可視化,可以訪問所需測試階段的虛擬形式,從而減少了浪費時間來測試環境設置和可用性。

Q7。您喜歡哪種測試工具,該工具有什麼好處?

在這裡提及您使用過的測試工具,並據此來制定答案。我在下面提到一個示例:
我致力於Selenium,以確保高品質和更頻繁地發布。

硒的一些優點是:

  • 它是免費和開源的
  • 它擁有龐大的用戶群並為社區提供幫助
  • 它具有跨瀏覽器兼容性(Firefox,Chrome,Internet Explorer,Safari等)。
  • 它具有出色的平台兼容性(Windows,Mac OS,Linux等)
  • 它支援多種程式語言(Java,C#,Ruby,Python,Pearl等)
  • 它具有新的定期存儲庫開發
  • 它支援分散式測試

Q8。Selenium支援哪些測試類型?

Selenium支援兩種類型的測試:
回歸測試:它是在修復了錯誤的區域附近對產品進行重新測試的行為。
功能測試:指單獨測試軟體功能(功能點)。

Q9。什麼是Selenium IDE?

我的建議是通過定義Selenium IDE來開始這個答案。它是Selenium腳本的集成開發環境。它被實現為Firefox擴展,並允許您記錄,編輯和調試測試。Selenium IDE包含整個Selenium Core,使您可以輕鬆,快速地記錄和回放將在其運行的實際環境中進行的測試。現在,您的答案中將
包含一些優點。藉助自動完成支援和快速移動命令的能力,Selenium IDE是創建Selenium測試的理想環境,無論您喜歡哪種測試樣式。

Q10。Selenium中的Assert和Verify命令有什麼區別?

我在下面提到了「聲明」和「驗證」命令之間的區別:

  • 斷言命令檢查給定條件是對還是錯。假設我們斷言給定元素是否存在於網頁上。如果條件為真,則程式控制項將執行下一個測試步驟。但是,如果條件為假,則執行將停止並且不會執行進一步的測試。
  • 驗證命令還會檢查給定條件是對還是錯。不管條件是對還是假,程式的執行都不會停止,即驗證過程中的任何失敗都不會停止執行,並且所有測試步驟都將被執行。

Q11。如何使用WebDriver啟動瀏覽器?

可以使用以下語法啟動瀏覽器:

WebDriver driver = new FirefoxDriver();
WebDriver driver = new ChromeDriver();
WebDriver driver = new InternetExplorerDriver();

Q12。什麼時候應該使用Selenium Grid?

對於這個答案,我的建議是給Selenium Grid一個小的定義。它可用於在多個平台和瀏覽器上同時執行相同或不同的測試腳本,以實現分散式測試執行。這允許在不同環境下進行測試,並顯著節省執行時間。

歡迎關注 Java架構師社區公眾號.
本文轉載自Java架構師必看 ,更多內容點擊查看!