原創|行業資訊|編輯:鄭恭琳|2021-03-02 13:43:15.753|閱讀 157 次
概述:人工智能已經走了很長一段路。也許您最近看過編排跳舞機器人的視頻?這些機器人如何敏捷靈活地以如此精確和高效的方式完成這些有趣的動作,真是令人驚訝。與行動不便的簡單任務相比,這是一項巨大的成就。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
人工智能已經走了很長一段路。也許您最近看過編排跳舞機器人的視頻?這些機器人如何敏捷靈活地以如此精確和高效的方式完成這些有趣的動作,真是令人驚訝。與行動不便的簡單任務相比,這是一項巨大的成就。
但是,在這個精心安排的例行程序中,在一個高度受控的環境中,他們正在完全按照編程的方式去做。在確定音樂中的哪段詩要演奏什么動作時,他們并沒有真正表現出自己的智慧或決策形式。
他們確實具有智能的控制系統,可以提供平衡和定向,但是這與根據音樂中發生的情況獨立選擇何時進行高踢或跳高不同。
其中一些機器人還包括其他功能,使它們可以執行某些任務,做出特定選擇并響應周圍的環境。人工智能(AI)增加了自動響應外部輸入和實時更改的范圍。這使機器人可以評估環境中發生的變化,并產生適當的反應。雖然機器人技術領域是AI使用的主要示例,但還有許多其他應用程序。
人工智能已顯示出顯著優勢的一個關鍵領域是自動化軟件測試。創建的每段代碼都需要進行測試,以驗證其是否符合要求并提供預期的結果。
執行手動測試以實現這些目標既繁瑣又耗時。使應用程序測試自動化可以提高驗證和驗證代碼的能力。
使用人工智能更快地測試發現并修復錯誤
即使在環境無法預測的情況下,添加AI可以進一步增強流程,使查找和修復錯誤的速度更快,更容易。隨著軟件復雜性的增加,自動化還必須擴展以提供更多功能,以在工作流中更早地識別和解決問題。
借助AI提高DevOps生產率
顯然,擁有可以根據代碼或測試的更改來應用決策的測試軟件可以使CI/CD工作流程受益,并提高DevOps團隊的工作效率,因此AI可以找到多種工具的方法是有道理的。
將AI與機器學習相結合
Parasoft開發副總裁Igor Kirilenko在他的博客“什么是軟件測試中的人工智能?”中解釋說,這些AI功能“可以查看測試狀態的當前狀態,最近的代碼更改,代碼覆蓋率以及其他指標,決定要運行的測試,然后再運行它們,而機器學習(ML)可以通過應用允許工具通過收集測試產生的大量數據自動進行改進的算法來增強AI。”那覆蓋了很多方面!
這已經演變成將決策功能整合到軟件測試工具中,這些決策功能使用觀察到的數據,包括實時推理和學習。在AI和ML的協助下,測試變得更快,更容易向左移動,從而提供了更早的缺陷修復并降低了交付風險。通過收集和合并測試數據,機器學習可以有效地更新和解釋某些軟件指標,這些指標可以顯示被測應用程序的狀態。
多年來,Parasoft已將針對AI和ML的多項創新納入了多個自動化測試解決方案中,以實現跨測試金字塔各個級別的更智能的測試創建和執行。我們已投入大量精力,使我們的客戶更容易進行測試。
從單元測試和靜態分析開始
2017年,Parasoft將AI測試功能引入了Parasoft Jtest中,以提高Java開發人員和測試人員使用靜態分析,單元測試,代碼覆蓋范圍和可追溯性的工作效率。該工具包括JUnit的單元測試助手,可以在更短的時間內實現更高的代碼覆蓋率。它的一項主要功能是能夠建議使用存根和模擬來確保測試的代碼隔離,然后自動創建那些模擬和存根以簡化測試的創建。
Jtest的另一個支持AI的功能是它能夠在沒有現有測試覆蓋率的情況下檢測代碼,并確定自動創建新測試以覆蓋這些代碼段所需的參數,存根和模擬。通過確定應用程序的差距,這有助于增加代碼覆蓋率。
AI還可以通過基于觀察到的行為對發現進行分類并對這些發現進行優先級排序以進行進一步研究,從而提高從靜態分析中受益的能力。Parasoft的AI可以識別代碼中的熱點,而機器學習通過觀察團隊與違規行為和代碼庫的交互來發現對開發人員重要的內容。通過向開發人員發出最相關的警告來警告潛在的高風險安全漏洞或低質量代碼區域,從而顯著減少了人工工作。
將金字塔上移到API和UI級別
AI和ML還于2018年添加到我們的無代碼API測試解決方案Parasoft SOAtest中,以使測試人員能夠輕松且無需腳本地通過UI使用生成有意義,可重用和可維護的API測試。此功能還可以幫助較少的技術團隊將其測試策略擴展到UI測試之外,從而提高總體測試覆蓋率并減少學習曲線。
最近,在2019年,引入了以提高Selenium Web UI測試的質量和維護。 中的AI可以在測試運行時識別定位器,等待時間和其他因素的問題,并自動自我修復損壞的測試以完成執行。然后,它為您提供了建議的修復程序列表,您可以通過的IDE與Eclipse和IntelliJ的集成輕松地將它們直接合并到測試代碼中。這是用于更新Web UI測試流程的巨大節省時間。
但是,創建和維護測試自動化只是第一步。解鎖連續測試的關鍵是擁有一個可用,穩定且可控的測試環境。服務虛擬化可以模擬測試環境中的各種約束,無論是由于不可用還是不可控制的依賴關系。Parasoft Virtualize利用AI從服務交互中開發數據模型,然后應用ML,并使用這些模型實時監控數據場景,因為它可以在測試環境中監控不同的使用模式。
由于API的復雜性和對UI的頻繁更改,受更改影響的測試套件需要定期進行標識,檢查和更新。手動執行此工作非常繁瑣,并且容易出錯。
為了緩解UI更改,包含了AI啟發式技術,可以診斷測試失敗并生成有關如何修復測試的建議。借助Parasoft SOAtest的變更顧問,可以快速協調API變更,該變更顧問可以主動掃描API界面,查找服務中的變更,然后確定測試資產如何受到這些變更的影響,并幫助用戶輕松地進行更新。
為了節省重新測試已更改代碼的時間,上述三款Parasoft產品(Jtest,SOAtest和)都集成了一種由AI驅動的功能,稱為測試影響分析,該功能將套件中的適當測試與代碼庫相關聯以進行智能測試。執行。
更改代碼后,Parasoft工具可以識別軟件內部版本之間的更改,并將其映射,以指定需要執行哪些測試來驗證這些更改。
現在,您可以在正確的時間執行正確的測試,并更快地完成測試。誰不愿意在更短的時間內進行更全面的測試?
隨著繁瑣且重復的任務繼續主導軟件測試,有很多機會將人工智能和機器學習應用于軟件測試自動化,以幫助用戶更快地適應和應對現代軟件開發挑戰。
作為該領域的突破性創新者,Parasoft通過利用這些先進方法,繼續為軟件測試工具增加效率和智能。Parasoft工具使用AI和ML通過以下方式協助和擴大您的應用程序開發和測試團隊:
想更多地了解將基于AI的自動化測試添加到您的軟件開發工作流程中嗎?與您感興趣的地方聯系我們,我們很樂意設置個性化演示。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn