搜尋
首頁科技週邊人工智慧生產式AI驅動的主機自動化測試

生產式AI驅動的主機自動化測試

Feb 26, 2024 am 11:34 AM
生成式ai主機自動化

譯者| 陳峻

審查| 重樓

將傳統大型主機應用的程式碼和資料遷移到現代化技術架構上,被認為是企業數位化發展的關鍵步驟。在追求效率和可擴展性的過程中,這種轉變通常涉及從傳統大型主機環境遷移到更靈活的雲端運算或內部部署方案。這樣的轉型有助於企業實現更高的靈活性和創新能力,同時降低成本並提高安全性。這種遷移還可以為企業帶來更好的資源利用率和更快的市場回應能力。企業需要謹慎規劃和執行此轉變,確保資料遷移和應用重構過程順利進行,以確保業務連續性和資料安全。透過將傳統大型主機應用遷移到現代化技術架構上,企業可以更好地適應快速變化的市場需求,實現

生產式AI驅動的主機自動化測試

不過,隨著業務環境的動態變化,也會讓遷移過程變得更加複雜。這不僅是技術上的資源重新部署,而且是一種根本性的轉變,因此往往需要經歷嚴格的測試,以確保各項功能的等效,進而保持應用在運行上的完整性和性能上的標準化。

同時,在遷移之後,應用程式經常會在新的要求、業務策略的演進、以及監管標準變化的驅動下,被迫進行大量的修改。而每一次修改,無論是微小的調整、還是重大的“翻修”,都必須經過嚴密的測試。其中最關鍵的挑戰就在於,如何確保新的變化能夠與現有的功能和諧集成,而不會造成意想不到的後果或中斷。可見,驗證新功能和保留現有功能的雙重要求,凸顯了在遷移後自動化測試套件的重要性。

近年來,生成式AI(GenAI)的廣泛應用,已輻射到了各個領域。如果將其引入大型主機的現代化過程,不但有望讓企業在軟體品質、營運效率等方面取得顯著改善,而且能夠帶來軟體開發和品質保證理念上的根本轉變,進而讓企業最終獲得可觀的投資回報。

我將與您討論如何利用適當的自動化測試方法、工具和最佳實踐,確保在技術平穩過渡中維持現代化大型主機應用的固有品質和效能。

傳統的手動測試概念

一直以來,大型主機環境並不願意接受自動化的測試方式。由Compuware和Vanson Bourne聯合開展的2019年全球調查示,僅有7%的受訪者為大型主機應用採用了自動化的測試案例,足以說明業界對此的態度。

手動測試的困境

作為對比,手動測試則是許多企業普遍採用的傳統方法。不過,在複雜的大型主機現代化過程中,該方法越來越顯得力不從心,而且容易出錯。畢竟,測試工程師需要手動驗證每個方案和業務規則。這個過程就充滿了人為出錯的可能性。而且,鑑於許多大型主機應用的高風險性和關鍵任務性特點,我們一旦在測試過程中忽略了某個細微的錯誤,則可能會導致嚴重的生產問題、大量的停機時間、甚至經濟損失。因此,該缺點會變得特別突出。此外,人工測試還存在以下缺陷:

1. 遺漏與不準確:手動處理大量測試案例,會增加遺漏關鍵場景、以及資料驗證不準確的風險。

2. 耗時性:手動方法需要大量時間對每個方面進行徹底測試,因此在快節奏的開發環境中效率不高。

3. 可擴充性問題:隨著應用程式的擴展和演進,手動測試所需的工作量會倍增,更無法有效地識別錯誤。

有的企業可能會直觀地想到擴大人工測試團隊。不過,這並非一個可行的解決方案。此舉既會導致成本效率的低下,又無法解決人工測試流程的固有限制。企業需要透過DevOps等現代方法,整合自動化測試流程,以提高效率並減少錯誤。

測試自動化的必要性

總的說來,透過在現代化大型主機應用程式中整合自動化測試流程,企業可以大幅提高遷移的效率和準確性。當然,大型主機環境中自動化測試的採用率並不高。有的企業認為這是挑戰,但也有的企業視之為巨大的轉型機會。畢竟,在測試中採用自動化不僅是一種技術升級,更是一種降低風險、節省時間和優化資源利用的策略性舉措。

對於希望在快速發展的科技環境中,保持競爭力和效率的企業來說,這項轉變至關重要。根據《DevOps狀態報告》顯示,自動化測試在優化操作工作流程和確保應用程式可靠性等方面,能夠發揮巨大的作用。

什麼是自動化測試?

根據Atlassian的定義#,自動化測試是透過運用軟體工具,自動完成那些由手動驅動的軟體產品的審查和驗證過程。其速度、效率和精度,都超越了傳統人工測試方法的限制。也就是說,自動化測試有助於在加快應用變更的同時,確保其品質和可靠性不受影響。自動化測試不僅能夠簡化新變更的驗證過程,還可以監控現有功能的完整性,從而在現代化應用的無縫過渡和持續維護方面發揮關鍵性作用。

在追求最佳化軟體測試流程的過程中,採用自動化測試往往需要初始的人工投入,會涉及測試工程師對於應用程式底層錯綜複雜的業務邏輯的理解。這種理解對於使用Selenium等框架有效地產生自動化測試案例是至關重要的。此階段雖然會耗費大量人力,卻是基礎性工作。畢竟後續的自動化測試將大幅減少測試本身對於人工的依賴,尤其是在重複和廣泛的測試場景中。而且,自動化框架一旦建立,就會成為應用程式持續評估的強大機制。其優點在於,它善於識別因應用程式變更而可能出現的錯誤或bug。

大型主機現代化過程中的自動化測試方法

在軟體工程領域,針對大規模的遷移或現代化大型主機應用程式的自動化測試,往往需要全面了解應用程式中的所有業務規則,以便為通常由數百萬行程式碼組成的龐大程式碼庫,產生自動化的測試案例。這是一項複雜又相當艱鉅的任務。鑑於難以達到100%的程式碼覆蓋率,我們需要在測試覆蓋深度與實際可行性之間實現平衡,以確保關鍵性的業務邏輯,能夠得到充分的測試覆蓋率。

在這種情況下,GenAI等新興技術提供了一種可能性。它能夠自動產生自動化測試腳本,以簡化大型主機現代化專案的測試流程,為軟體開發中的品質保證提供更有效率、更準確、更可擴展的方法。

GenAI的廣泛利用

在深入研究GenAI如何在大型主機現代化中實現自動化測試之前,讓我們先簡單了解GenAI。從根本上說,GenAI代表了人工智慧的一個面向。它透過生成式模型,來產生各種文字、圖像或其他媒介。這些生成式人工智慧模型善於學習輸入訓練資料的模式和結構元素,進而產生能夠反映這些特徵的新資料。顯然,這類系統主要依賴機器學習模型,尤其是深度學習領域的模型。

自然語言生成(Natural Language Generation,NLG)是與大型主機現代化強相關的一種GenAI形式。它能夠在大語言模型(large language models,LLM)的支持下,產生出類似人類的文本。通常,LLM在大量文字資料的語料庫中接受訓練,使其能夠辨別和複製語言的細微差別和結構。因此,這種訓練使得它們能夠執行各種自然語言處理任務,包括:文本生成、翻譯摘要、以及情緒分析等。值得注意的是,LLM還能夠熟練地產生準確的電腦程式碼。

目前,大語言模型的著名用例包括:GPT-3(Generative Pre-trained Transformer 3)、BERT(Bidirectional Encoder Representations from Transformers)和T5(Text-to-Text Transfer Transformer)。這些模型通常建立在深度神經網路的基礎上,尤其是那些採用了Transformer架構的模型。因此,它們在處理文字等順序資料方面,表現出了卓越的功效。大量的訓練資料(包括數百萬、甚至數十億的單字或文件)使得這些模型能夠全面掌握各種程式語言。它們不僅在產生連貫且與上下文相關的文本方面表現出色,而且在預測語言模式(如完成句子或回答查詢)方面也很優秀。

目前,某些大語言模型還可以理解和生成多種語言的文本,從而提高其在全球範圍內的實用性,從為聊天機器人和虛擬助理提供“智力”,到支援內容生成、語言翻譯與摘要等應用領域,LLM的多功能性都能夠帶來不俗的表現。

如何使用GenAI產生自動化測試腳本

在軟體測試領域,LLM可以幫助我們從應用程式的程式碼中提取業務邏輯,並將這些規則轉換為人類可讀的格式,進而產生對應的自動化測試腳本。同時,它也能夠幫助我們遴選出必要數量的測試案例,以滿足程式碼片段的各種潛在覆蓋率要求。

通常,使用GenAI產生應用程式程式碼的自動化測試腳本,需要以下結構化的三步驟流程:

1. 使用GenAI提取業務規則:作為初始階段,我們需要使用GenAI從應用程式中提煉業務規則。此流程會對提煉到的規則按照詳細程度進行判定,並以人類可讀的格式進行詮釋。此外,GenAI也有助於全面了解給定程式碼段的所有潛在結果。這些知識對於確保創建準確、相關的測試腳本是至關重要的。

2. 利用GenAI在功能層面產生自動化測試腳本:根據提取到的業務邏輯,測試工程師能夠對應用程式的功能擁有全面的了解,以便在功能層面上利用GenAI來開發測試腳本。此步驟涉及確定所需的測試腳本數量,並識別可能被排除在外的場景。當然,這類自動化測試腳本的程式碼涵蓋範圍,往往是由團隊集體決定的。

3. 由主題專家(Subject Matter Experts,SME)進行驗證和推理添加:在最後階段,一旦提取了業務邏輯,並產生了相應的自動化測試腳本,測試專家就會驗證這些腳本,並有權進行新增、修改或刪除等操作。此類幹預解決了GenAI輸出可能產生的潛在機率錯誤,並提高了自動化測試腳本的品質確定性。

上述過程看似複雜,實際上卻能充分利用GenAI的能力,以簡化測試腳本產生的流程,並確保自動化的效率與人類專業知識的完美結合。其中,測試人員在驗證階段的參與尤其重要。這會讓人工智慧產生的輸出結果,能夠建立在實際、真實的應用知識之上,從而顯著提高測試腳本的可靠性和適用性。

小結

綜上所述,作為一種提高效率的工具,GenAI可以透過其NLG能力產生自動化測試腳本,進而提高大型主機現代化的軟體測試過程的準確性和可靠性。同時,GenAI需要透過結構化的三步驟流程,來完善AI產生的輸出結果,並確保自動化腳本不僅在技術上合理,而且在實踐中適用,從而體現AI能力與人類專業知識的和諧統一。而這種整合對於解決現代化大型主機應用程式的複雜性和動態要求,顯然是至關重要的。

譯者介紹

陳峻(Julian Chen),51CTO社群編輯,具有十多年的IT專案實施經驗,善於對內部和外部資源與風險實施管控,專注傳播網路與資訊安全知識與經驗。

原文標題:GenAI-Driven Automation Testing in Mainframe Modernization#,作者:sampath amatam)


#

以上是生產式AI驅動的主機自動化測試的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:51CTO.COM。如有侵權,請聯絡admin@php.cn刪除
烹飪創新:人工智能如何改變食品服務烹飪創新:人工智能如何改變食品服務Apr 12, 2025 pm 12:09 PM

AI增強食物準備 在新生的使用中,AI系統越來越多地用於食品製備中。 AI驅動的機器人在廚房中用於自動化食物準備任務,例如翻轉漢堡,製作披薩或組裝SA

Python名稱空間和可變範圍的綜合指南Python名稱空間和可變範圍的綜合指南Apr 12, 2025 pm 12:00 PM

介紹 了解Python函數中變量的名稱空間,範圍和行為對於有效編寫和避免運行時錯誤或異常至關重要。在本文中,我們將研究各種ASP

視覺語言模型(VLMS)的綜合指南視覺語言模型(VLMS)的綜合指南Apr 12, 2025 am 11:58 AM

介紹 想像一下,穿過​​美術館,周圍是生動的繪畫和雕塑。現在,如果您可以向每一部分提出一個問題並獲得有意義的答案,該怎麼辦?您可能會問:“您在講什麼故事?

聯發科技與kompanio Ultra和Dimenty 9400增強優質陣容聯發科技與kompanio Ultra和Dimenty 9400增強優質陣容Apr 12, 2025 am 11:52 AM

繼續使用產品節奏,本月,Mediatek發表了一系列公告,包括新的Kompanio Ultra和Dimenty 9400。這些產品填補了Mediatek業務中更傳統的部分,其中包括智能手機的芯片

本週在AI:沃爾瑪在時尚趨勢之前設定了時尚趨勢本週在AI:沃爾瑪在時尚趨勢之前設定了時尚趨勢Apr 12, 2025 am 11:51 AM

#1 Google推出了Agent2Agent 故事:現在是星期一早上。作為AI驅動的招聘人員,您更聰明,而不是更努力。您在手機上登錄公司的儀表板。它告訴您三個關鍵角色已被採購,審查和計劃的FO

生成的AI遇到心理摩托車生成的AI遇到心理摩托車Apr 12, 2025 am 11:50 AM

我猜你一定是。 我們似乎都知道,心理障礙由各種chat不休,這些chat不休,這些chat不休,混合了各種心理術語,並且常常是難以理解的或完全荒謬的。您需要做的一切才能噴出fo

原型:科學家將紙變成塑料原型:科學家將紙變成塑料Apr 12, 2025 am 11:49 AM

根據本週發表的一項新研究,只有在2022年製造的塑料中,只有9.5%的塑料是由回收材料製成的。同時,塑料在垃圾填埋場和生態系統中繼續堆積。 但是有幫助。一支恩金團隊

AI分析師的崛起:為什麼這可能是AI革命中最重要的工作AI分析師的崛起:為什麼這可能是AI革命中最重要的工作Apr 12, 2025 am 11:41 AM

我最近與領先的企業分析平台Alteryx首席執行官安迪·麥克米倫(Andy Macmillan)的對話強調了這一在AI革命中的關鍵但不足的作用。正如Macmillan所解釋的那樣,原始業務數據與AI-Ready Informat之間的差距

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。