- TestStand工業(yè)自動化測試管理(典藏版)
- 胡典鋼編著
- 4379字
- 2022-05-05 21:20:42
1.4 自動化測試趨勢
市場需求迫使各個行業(yè)的企業(yè)不得不在更短的時間內(nèi)提供更加復雜和更多功能的產(chǎn)品。隨著各種技術(shù)的融合,產(chǎn)品的復雜度不斷升級,而且產(chǎn)品組合也在不斷擴大以提供新的功能,這些對測試提出了更大的挑戰(zhàn)。在討論自動化測試趨勢之前,需要先了解完整的產(chǎn)品開發(fā)過程,在這個過程中有哪些階段需要測試,哪些階段適合實施自動化測試,產(chǎn)品開發(fā)過程中對測試需求的增長和變化影響著自動化測試趨勢。產(chǎn)品開發(fā)過程包括調(diào)研、開發(fā)、系統(tǒng)驗證、量產(chǎn)和后期維護五大階段,如圖1-4所示。

圖1-4 產(chǎn)品開發(fā)過程
首先是調(diào)研階段,將有關(guān)市場機會、競爭力、技術(shù)可行性、生產(chǎn)需求的信息綜合起來,以確定新產(chǎn)品的框架,然后是研發(fā)項目審批—批核—立項,之后可以設(shè)計原型對關(guān)鍵性的功能進行仿真驗證,以確認方案是否現(xiàn)實可行。方案確定后,進入開發(fā)階段,這是產(chǎn)品的詳細設(shè)計階段,該階段主要是產(chǎn)品的設(shè)計與構(gòu)造,產(chǎn)品的各個組件將被分別設(shè)計,并進行功能驗證,項目的核心是“設(shè)計—建立—驗證”循環(huán)。當各個組件設(shè)計完成并組裝成最終產(chǎn)品時,需要從系統(tǒng)角度對產(chǎn)品整體進行驗證,這包括產(chǎn)品性能參數(shù)驗證、功能性驗證、可靠性驗證,這個階段會進行小規(guī)模的試產(chǎn)。之后是產(chǎn)品量產(chǎn)階段,包括產(chǎn)線復制,配套設(shè)施批量部署,產(chǎn)品大規(guī)模生產(chǎn),這個階段出現(xiàn)的任何問題都有可能被無限放大,非常考驗企業(yè)的研發(fā)體系管理和質(zhì)量管控體系規(guī)劃。最后是產(chǎn)品的后期維護階段,包括產(chǎn)品維修、市場反饋的產(chǎn)品缺陷修復、提前通知產(chǎn)品停產(chǎn)。
在產(chǎn)品開發(fā)的每個階段,都需要驗證測試。驗證測試又進一步細分為設(shè)計驗證測試和質(zhì)量驗證測試。在產(chǎn)品調(diào)研和開發(fā)階段,以設(shè)計驗證測試為主,評估方案可行性,確保設(shè)計的產(chǎn)品是正確的;而在系統(tǒng)驗證和量產(chǎn)階段,以質(zhì)量驗證測試為主,確保產(chǎn)品的功能正常、性能參數(shù)滿足相關(guān)標準。這兩者之間沒有嚴格的界線,比如在設(shè)計驗證測試階段就有可能發(fā)現(xiàn)潛在的問題,這些問題會影響到產(chǎn)品后期的質(zhì)量;若在質(zhì)量驗證測試中系統(tǒng)驗證失敗,有可能需要更改產(chǎn)品設(shè)計。圖1-5所示的是產(chǎn)品的驗證測試內(nèi)容。

圖1-5 產(chǎn)品的驗證測試內(nèi)容
1.原型測試
當開發(fā)一個新產(chǎn)品時,最先可測試的對象是產(chǎn)品原型。原型是為了快速驗證設(shè)計理念而搭建的一個系統(tǒng)工作模型。對原型較常見的測試是檢測原型能否滿足某個特定的需求,這有利于判斷該需求是否合理,基于現(xiàn)有技術(shù)是否可行,從而將技術(shù)上不可行或者會與其他關(guān)鍵需求相沖突的項剔除。如果有幾種不同的方案,原型測試可以幫助我們篩選出滿足系統(tǒng)整體需求,同時盡可能縮短開發(fā)時間、降低成本的方案。
2.開發(fā)測試
一個完整的產(chǎn)品是一個系統(tǒng),它由很多組件構(gòu)成。在開發(fā)階段,從每個組件開始,它們在設(shè)計完成后都將被測試,以避免后期將錯誤引入整個系統(tǒng)。一般單個組件的測試是通過給它提供激勵信號,然后測量其輸出,將組件的輸出與預期的結(jié)果進行對比,驗證設(shè)計是否正確。單個組件驗證測試通過后,需要將它們組裝成更大的子系統(tǒng)或更高級別的組件,將更高級別的組件組裝起來形成最終的系統(tǒng)。這時需要對每個組裝的子系統(tǒng)進行綜合測試,綜合測試驗證當單個組件存在于更大的體系中時是否可以同樣正常工作,同時確保組件之間的協(xié)同工作沒有問題。在綜合測試的過程中,又常常會引入回歸測試(Regression Test)。比如,某個組件C1,單獨測試時其測試項T1通過,當組成子系統(tǒng)S1時,有可能在綜合測試中再次對組件C1執(zhí)行測試項T1,因為有可能C1在子系統(tǒng)中工作時會受到其他組件的影響,導致其功能偏差甚至異常,回歸測試可以發(fā)現(xiàn)這些問題。另外,當子系統(tǒng)有問題時,也經(jīng)常會采用回歸測試以定位問題。
3.產(chǎn)品測試
將子系統(tǒng)相互結(jié)合形成最終產(chǎn)品后,還要對產(chǎn)品進行產(chǎn)品測試,以確保產(chǎn)品滿足所有要求并且無缺陷,這包括產(chǎn)品性能測試、功能測試、環(huán)境測試和負荷測試。性能測試用于檢測產(chǎn)品具體性能參數(shù),對于每項性能,可以確定一個可接受的容限,然后檢驗測量結(jié)果是否在容限內(nèi);性能測試得到的結(jié)果是具體的數(shù)值,因此可以通過量化的方式評估產(chǎn)品性能。功能測試用于檢測產(chǎn)品各項功能是否存在且工作正常,它是定性地評估產(chǎn)品。環(huán)境測試模擬產(chǎn)品可能的使用環(huán)境,比如不同的溫度、濕度、復雜的電磁場環(huán)境,看產(chǎn)品是否同樣正常工作。負荷測試與環(huán)境測試有些類似,但環(huán)境測試模擬的是產(chǎn)品真實的使用環(huán)境,而負荷測試則是讓它工作于極限環(huán)境下,以此來尋找產(chǎn)品正常工作的臨界點,通過負荷測試,保證產(chǎn)品在標稱可允許范圍內(nèi)完全穩(wěn)定運行。
4.產(chǎn)線測試
產(chǎn)品測試完成后,小規(guī)模試產(chǎn)階段也已經(jīng)結(jié)束,接下來就可以進行批量生產(chǎn),相應地對測試系統(tǒng)進行大規(guī)模復制,并部署到產(chǎn)線中。產(chǎn)線測試過程中有可能出現(xiàn)某些問題,例如部署系統(tǒng)和原有的開發(fā)系統(tǒng)有偏差,測試結(jié)果不一致,需要定位問題是由于產(chǎn)品差異、環(huán)境差異造成的,還是測試系統(tǒng)之間差異造成的,并且由于取樣多了,有可能發(fā)現(xiàn)一些在開發(fā)測試和產(chǎn)品測試階段沒有遇到的問題。在產(chǎn)線測試階段,基本上不會對產(chǎn)品設(shè)計進行較大的改動了,即使改動也會非常謹慎,更多的是通過仔細分析定位問題所在并盡快解決問題。
5.不良產(chǎn)品測試
產(chǎn)品已推向市場,但是有一些故障產(chǎn)品需要返修。如果故障具有一定的代表性且返修率較高,則需要對返修產(chǎn)品做詳細檢測,生成檢測報告,并做故障統(tǒng)計。這些數(shù)據(jù)可以反饋給產(chǎn)品研發(fā)部門,作為產(chǎn)品改進和修復的依據(jù)。
在產(chǎn)品調(diào)研和開發(fā)階段,項目團隊需要考慮使用什么樣的測試設(shè)備完成原型測試和開發(fā)測試,然后在產(chǎn)品測試階段開始著手搭建自動化測試系統(tǒng),并在產(chǎn)線測試階段批量部署測試系統(tǒng)。那么在產(chǎn)品的整個開發(fā)過程中,哪些階段適合引入自動化測試?對于原型測試和開發(fā)測試,由于樣品數(shù)量少、測試項多,測試需求經(jīng)常變動,引入自動化測試的需求沒有那么強烈,并且自動化測試系統(tǒng)開發(fā)需要詳細規(guī)劃和大量時間,這種情況下有可能手動測試反而更方便。然而現(xiàn)在產(chǎn)品的復雜度不斷升級,功能越來越豐富,導致產(chǎn)品開發(fā)過程中,設(shè)計驗證測試和質(zhì)量驗證測試相互滲透,開發(fā)測試中需要的樣品數(shù)量在不斷增加,同時產(chǎn)品功能增加導致測試項增加,這些都極大地增加了手動測試的時間。例如,現(xiàn)在智能手機非常普及,基本上都有無線WiFi功能。WiFi有很多個信道,如果要測試手機的WiFi功能,需要測試其在不同信道的性能參數(shù),一般會有一個很長的列表,手動測試方式的效率會非常低,因此產(chǎn)品的研發(fā)階段就需要引入自動化測試,自動化測試的需求也會越來越多。
一方面,自動化測試需求的急劇增加;另一方面,由于引入自動化測試需要時間、預算和技術(shù)支撐,要求在前期做足夠的準備工作,因此了解自動化測試趨勢將有助于決策層和項目開發(fā)團隊采取最佳方式對測試進行優(yōu)化。圖1-6引用自NI公司2013年發(fā)布的《自動化測試趨勢展望白皮書》,它從商業(yè)策略、系統(tǒng)構(gòu)架、數(shù)據(jù)處理、軟件以及硬件I/O五個方面總結(jié)出自動化測試展望趨勢,這些趨勢將會在未來3年內(nèi)對自動化測試領(lǐng)域產(chǎn)生重大影響。
這里有三個重點:①商業(yè)策略部分講究測試成本控制,如何采用標準化架構(gòu)實現(xiàn)測試資源整合以及測試組織優(yōu)化;②系統(tǒng)架構(gòu)部分提出以軟件為中心構(gòu)建的生態(tài)系統(tǒng);③軟件部分如何保證測試軟件質(zhì)量。這些趨勢不是突然出現(xiàn)在人們的視野里的,移動設(shè)備正在經(jīng)歷的變革暗示著測試和測量行業(yè)的一個重要發(fā)展趨勢——以軟件為中心構(gòu)建的生態(tài)系統(tǒng)。早期的手機只能用來撥打電話,之后才出現(xiàn)短信功能,但是這些功能幾乎完全是由廠商定義的。這些設(shè)備上的軟件對用戶開放之后,從音樂播放器到攝像頭,再到電子郵件等功能便迅速普及,但是這一變革的作用不僅在于開放式軟件體驗。Apple公司以及之后的Google公司都圍繞各自的產(chǎn)品建立了強大的生態(tài)系統(tǒng),并構(gòu)建了一個應用程序開發(fā)者社區(qū)來改善產(chǎn)品的使用性。可以說,手機的開放性和社區(qū)概念模式本可以由傳統(tǒng)手機供應商自己開發(fā),但是真正應用這個理念的卻是在部署硬件之前率先開發(fā)了軟件環(huán)境的Apple公司和Google公司。這兩家公司通過向用戶或第三方開發(fā)者提供一定程度的軟件自定義化,成功地改變了消費者對手機的看法。這一概念模式也在影響著測試和測量行業(yè),由開發(fā)者和集成商組成并且建立于標準軟件平臺之上的社區(qū)正在利用商業(yè)現(xiàn)成技術(shù)來將復雜硬件的功能擴展到前所未有的應用中。以軟件為中心構(gòu)建的生態(tài)系統(tǒng)所具有的生產(chǎn)力和協(xié)作性將對未來3~5年的測試系統(tǒng)設(shè)計產(chǎn)生深遠的影響。舉另一個以軟件為中心的案例:FPGA作為一種可編程邏輯器件,它在短短20多年中從電子設(shè)計的外圍器件逐漸演變?yōu)閿?shù)字系統(tǒng)的核心。伴隨半導體工藝技術(shù)的進步,F(xiàn)PGA的設(shè)計技術(shù)取得了飛躍發(fā)展及突破,正朝著高密度、高速度、寬頻帶,同時低電壓、低功耗、低成本的方向發(fā)展。FPGA技術(shù)最大的特點就在于通過軟件(硬件描述語言)定義硬件的功能,這種可重編程能力使得它能夠高度定制化,輕松滿足多元化市場需求。同時,F(xiàn)PGA社區(qū)提供越來越多的通用IP(知識產(chǎn)權(quán))或客戶定制IP,以滿足產(chǎn)品快速上市的要求。

圖1-6 自動化測試趨勢
過去,測試系統(tǒng)的價值僅等于在該系統(tǒng)上所投資的時間和金錢。展望未來,測試系統(tǒng)將得益于以軟件生態(tài)系統(tǒng)核心且由第三方供應商、集成商、顧問和衍生標準構(gòu)成的社區(qū)。這對于滿足新一代設(shè)備測試需求至關(guān)重要。
——Jessy Cavazos,F(xiàn)rost&Sullivan測試測量行業(yè)總監(jiān)
對于自動化測試而言,最重要的趨勢是構(gòu)建以軟件為中心的生態(tài)系統(tǒng),這是一個以軟件為中心的時代。這種趨勢帶來了什么樣的好處?首先是更高的測試系統(tǒng)靈活性,對自動化測試系統(tǒng)而言,在標準硬件平臺之上,通過軟件定義系統(tǒng)的功能,使得系統(tǒng)可擴展至多種應用、業(yè)務部門以及各個產(chǎn)品階段,這種靈活性能夠很好地應對產(chǎn)品復雜性增加、測試需求改變、新的測試標準;其次是更低的測試系統(tǒng)投資,由于軟件為中心帶來的靈活性,它可以實現(xiàn)硬件和IP的復用,測試系統(tǒng)升級不再需要頻繁更換儀器設(shè)備,減少了維護成本,同時增加了設(shè)備利用率;再次是更長的測試系統(tǒng)壽命,基于廣泛采納的標準化架構(gòu),允許技術(shù)升級來改進性能并滿足將來的測試需求,測試系統(tǒng)不再輕易被淘汰;最后是圍繞軟件生態(tài)系統(tǒng)形成的社區(qū),它促進了行業(yè)參與者的相互合作交流,每加入一個供應商、制造商、競爭者或利益相關(guān)者,軟件對每個客戶的價值也隨之增加。在未來3~5年內(nèi),自動化測試系統(tǒng)將會更加依賴于軟件,各種生態(tài)系統(tǒng)對客戶通過這些平臺創(chuàng)造的價值也將產(chǎn)生更大的影響。圖1-7所示的是基于軟件平臺的解決方案和缺乏靈活性的固定解決方案之間的對比,橫軸是時間刻度,縱軸是投資金額。可以看到,對基于軟件平臺的解決方案進行正確的前期投資之后,開發(fā)支持新技術(shù)和新功能的系統(tǒng),以及對現(xiàn)有系統(tǒng)進行改造的風險和成本,將隨著時間的推移而日趨減小,最終實現(xiàn)更低的測試系統(tǒng)投資和更長的測試系統(tǒng)壽命。

圖1-7 不同平臺解決方案之間的成本變化趨勢
我們已經(jīng)看到對軟件設(shè)計、開發(fā)流程和人才進行大規(guī)模投資后,開發(fā)及維護復雜測試系統(tǒng)所需的時間、精力和成本均有了顯著降低。我們必須提供和支持的是具有較長生命周期的系統(tǒng),因此在開發(fā)之前進行必要的投資是至關(guān)重要的。
——國家點火裝置和光電子科學董事會實驗室系統(tǒng)組項目經(jīng)理,美國勞倫斯利弗莫爾國家實驗室
- 我的J2EE成功之路
- Cinema 4D R13 Cookbook
- 工業(yè)機器人技術(shù)及應用
- Getting Started with Containerization
- Hands-On Machine Learning with TensorFlow.js
- CompTIA Network+ Certification Guide
- Azure PowerShell Quick Start Guide
- Photoshop CS4數(shù)碼攝影處理50例
- Web編程基礎(chǔ)
- FANUC工業(yè)機器人配置與編程技術(shù)
- 自適應學習:人工智能時代的教育革命
- Cisco UCS Cookbook
- 軟件質(zhì)量管理實踐
- 大話數(shù)據(jù)科學:大數(shù)據(jù)與機器學習實戰(zhàn)(基于R語言)
- 局域網(wǎng)組建與使用完全自學手冊