原創|行業資訊|編輯:鄭恭琳|2020-06-11 15:19:15.540|閱讀 371 次
概述:隨著諸如微服務、容器和API之類的軟件開發變得越來越復雜,以及對更快發布的需求不斷增加,像往常一樣進行測試可以看作是交付過程中笨拙,不適當的步驟。在這篇文章中,學習如何解決它。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
隨著諸如微服務、容器和API之類的軟件開發變得越來越復雜,以及對更快發布的需求不斷增加,像往常一樣進行測試可以看作是交付過程中笨拙,不適當的步驟。在這篇文章中,學習如何解決它。
實現連續測試并不像沿黃磚路走……還是?盡管聽起來很簡單,但是有各種測試、陷阱和技巧可以到達需要去的地方。已經采用敏捷Agile開發和DevOps方法的組織知道,很難跟上這些現代開發實踐的步伐。無法啟用測試自動化和連續測試之類的工具妨礙了他們的努力。
但是,就像敏捷Agile和DevOps實踐一樣,持續測試沒有一個正確的答案,這會使組織很難清楚地從哪里開始。從功能的角度進行某種程度的測試自動化是連續測試的基礎。服務虛擬化是實現連續測試的關鍵技術。但是,為了使您甚至能夠利用服務虛擬化并真正成為一名真正的連續測試從業人員,您必須首先具備一定程度的測試自動化。
許多組織將從簡單地自動化UI測試開始,但是為了實現連續測試,組織需要專注于創建可擴展的測試自動化實踐,該實踐遵循Mike Cohn(在他的書《Succeeding with Agile》)和敏捷Agile思想領袖Martin Fowler。金字塔的基礎是單元測試的基礎,這些單元測試是隔離的并且執行速度更快。當您沿著金字塔向上移動時,您要測試的資產將更加集成,并且需要更長的時間才能執行。金字塔的中間是進行服務集成或API測試的地方,這是功能測試自動化的最佳選擇,然后端到端UI測試是最小的部分,是金字塔的最上層。
如果要實現連續測試,則必須提供單元測試的基礎,并且API測試將成為驗證用例的關鍵層。您還需要優化金字塔頂部的端到端UI測試。您不應該消除UI測試,但要使它們盡可能高效和有針對性,因為您必須擔心維護這些測試,這可能會非常耗時。
完成此操作后,組織可以從連續測試中獲得價值的第一階段——回歸的早期識別,并且找到這些回歸的最佳方法是在API級別,因為它們執行起來更快、更容易診斷并且比其UI級表親更容易復制。
一旦運行了單元測試和功能測試,并且使用服務虛擬化來更連續地運行回歸測試,就可以查看您的非功能性業務需求,例如性能和安全性。
例如,在性能方面,開發團隊很容易在應用程序中引入增量性能問題而甚至沒有意識到它,并且在開發過程的早期就抓住這些問題以確保應用程序的整體性能特征不至于至關重要。超出您定義的協議服務水平(SLA)。
在這里,您可以利用連續的測試實踐來向左移動性能測試。首先應用服務虛擬化來隔離您的系統部分,并消除測試基礎架構中的性能瓶頸。然后進行一組可靠的API測試,然后重用它們以在整個系統的一部分上產生負載。最后,將性能測試的執行集成到CI管道中,并連續執行這些測試。這是您真正開始從連續測試中獲得第二階段價值的時候。
在Parasoft,我們的工具涵蓋了單元、功能、UI和回歸測試,以幫助我們的客戶提供還可以滿足最終用戶需求的高質量軟件。我們正在從事從API和UI的單元和功能測試、測試數據管理、安全性和安全性合規性、變更管理等在內的所有工作。
在測試金字塔之后,您可以從基礎開始,并獲得Parasoft C/C++test,Parasoft dotTEST和Parasoft Jtest開發測試工具,其中包括諸如靜態分析之類的內容,以揭示深層的可靠性和安全性(支持OWASP,CWE和CERT標準)、單元測試、覆蓋范圍和可追溯性。
在金字塔中旅行時,您可以利用Parasoft SOAtest,這是我們的功能測試解決方案,專注于在API級別上驗證應用程序。為了幫助組織從手動測試過渡到自動化API測試,您可以使用SOAtest的Smart API Test Generator,它利用AI和機器學習來從記錄的應用程序流量中提取的數據關系構建測試場景。
為了真正實現連續測試的希望,您可以利用Parasoft Virtualize來利用服務虛擬化,這使組織可以將測試自動化與測試環境中的約束脫鉤。這樣就可以進行真正的連續測試,從而可以在整個CI管道中連續執行自動化測試。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn