測試越多,問題越多:重新思考人工智慧驅動的測試生成

生成式人工智慧正以前所未有的速度改變軟體開發。 

市面上有超過 76%的開發人員 他們表示已經在使用人工智慧輔助編碼工具。報告也顯示,開發人員可以完成任務。 速度快約 55% 帶有AI代碼建議。 

然而,對許多高階主管而言,人工智慧的承諾尚未轉化為可衡量的影響。 最近的一項調查 僅限資訊長和IT領導者 32% 的人積極衡量收入影響和時間節省情況 得益於他們在人工智慧領域的投資。 

即時覆蓋的錯覺 

AI驅動的測試用例產生看起來是一項突破。只需將程式碼庫輸入模型,幾秒鐘內即可產生數千個新的測試案例。更廣泛的測試覆蓋率和更快的自動化速度帶來的益處不容忽視。 

但更多檢測不一定代表 勝過 試驗。 

即使是經過多年最佳實踐不斷完善的精心設計的框架,如果輸入低品質或過時的 AI 生成程式碼,也可能崩潰。  

例如,隨著 Appium 3 的發布,許多語法和功能更新使得先前的 Appium 2 範例過時。然而,除非您明確指定,否則大多數大型語言模型仍然預設使用舊模式。 

人工智慧產生的程式碼通常 看起來正確 同時,一些細微的問題也被掩蓋起來,這些問題只有在執行過程中才會顯現。工程師隨後要花費數小時來調試定位器不匹配、依賴關係衝突和脆弱的斷言——這些時間抵消了最初提高生產力所帶來的任何好處。 

DevOps.com 調查, 組織的60% 他們承認,在人工智慧產生的程式碼投入生產之前,他們缺乏正式的審查或驗證流程。  

這種過度自信,被稱為 自動化偏見 正在成為現代軟體交付中最不易察覺的風險之一。 

更差, 行為研究 顯示人類傾向於 即使人工智慧的輸出是錯誤的,人們也常常信任它們,忽略其中的矛盾或上下文缺失。隨著依賴性的增長,批判性思考可能會逐漸喪失。 開始逐漸消失。不是因為人類懂得少,而是因為我們假定機器已經完成了最困難的部分。
因此,在將人工智慧引入測試之前,建立以標準、框架和反饋循環為基礎的清晰基礎至關重要。 

基礎先行:面向人工智慧設計,而非繞過它。 

在要求 LLM 產生測試之前,首先要確定「好的自動化」對於您的組織來說是什麼樣的。
這項基礎決定了人工智慧會加速進步還是會加劇不一致性。 

奠定基礎: 

  • 定義你的 測試架構 (例如,具有可重複使用元件的 BDD)。 
  • 保持一個 一致的定位和命名策略。 
  • 創建一個 基線儲存庫 高品質的測試範例—您的「黃金標準」。 

一旦這種結構存在, 然後 將人工智慧引入流程。向模型輸入這些基準範例,並提示它產生符合您既定框架的程式碼片段。這會將人工智慧從腳本生成器轉變為… 學習合作者. 

測試自動化中 GenAI 的防護措施 

一旦人工智慧融入你的工作流程,挑戰就從生成轉向管理。建立穩固的框架是第一步。隨著人工智慧加速產出,保持嚴謹的管理是第二步。 

人工智慧產生的程式碼應該遵循與任何其他程式相同的原則。 DevOps-符合自動化實務: 治理、回饋和持續改進。 

創新戰略家 傑里米·厄特利 他在文章中完美地捕捉了這種心態。 “關鍵在於隊友,而非技術”認為人工智慧在被當作人類對待時表現最佳。 同事,不是替代者。 

同樣的邏輯也適用於測試自動化: 

  • 給人工智慧提供背景資訊。 就像一名新工程師一樣,它需要例子和指導才能理解你的標準。 
  • 審閱其工作。 所有建議都只是草案,並非最終決定。 
  • 建立反饋機制。 你修改改進的次數越多,輸出結果就越聰明。 
  • 讓人們承擔責任。 人工智慧無法解讀業務邏輯、判斷風險優先順序或理解使用者意圖。 「好」的定義仍然由人來定義。 

這種思維方式將人工智慧從一種生產力工具轉變為一種 合作者 這樣可以擴大團隊最佳實踐的規模,而不是削弱它們。 

連接到 DevOps從程式碼爆炸到可控流程 

在成熟期 DevOps 環境,品質是透過以下方式衡量的: 信號噪聲比而不是按運行的測試次數來算。

如果沒有結構和防護措施,人工智慧可能會向管道中註入大量不穩定的測試,從而減緩回饋速度並增加維護成本。 

當與 DevOps 原則上,人工智慧驅動的測試成為一種有意識的實踐: 

  • 可追踪的: 每個測試都對應著一個需求或缺陷。 
  • 可維護的: 可重複使用組件最大限度地減少了重複工作。 
  • 連續: 根本原因分析和分析數據有助於改善未來的人工智慧輸出。 

目標不是實現一切自動化,而是… 有意義的自動化確保每次 AI 產生的測試都能促進更快、更高品質的版本發布。 

對領導者而言,真正的機會不在於更快採用人工智慧,而是明智地採用人工智慧——建立結構、責任機制和明確的目標。 

結語 

生成式人工智慧正在改變測試的編寫方式,但如何使用它們仍然取決於我們自己。 

人工智慧的發展速度永遠不減,但缺乏方向的速度會付出慘痛的代價。我們的目標不是創建更多的測試案例,而是創建能夠提升品質、增強信心的可靠測試案例。 

測試的未來屬於那些能夠結合以下要素的團隊: 人類的洞察力、結構和紀律 人工智慧的規模和速度如此之大。當我們把人工智慧視為… 隊友,而不僅僅是技術,我們停止為了自動化而自動化,開始打造持久的品質。 

 

你可能還喜歡