工業(yè)控制軟件平臺(tái)自動(dòng)化測(cè)試技術(shù)研究與應(yīng)用實(shí)踐_第1頁
工業(yè)控制軟件平臺(tái)自動(dòng)化測(cè)試技術(shù)研究與應(yīng)用實(shí)踐_第2頁
工業(yè)控制軟件平臺(tái)自動(dòng)化測(cè)試技術(shù)研究與應(yīng)用實(shí)踐_第3頁
工業(yè)控制軟件平臺(tái)自動(dòng)化測(cè)試技術(shù)研究與應(yīng)用實(shí)踐_第4頁
工業(yè)控制軟件平臺(tái)自動(dòng)化測(cè)試技術(shù)研究與應(yīng)用實(shí)踐_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

導(dǎo)讀:自動(dòng)化測(cè)試在行業(yè)中的重要性和優(yōu)勢(shì)是顯而易見的。本文介紹了在工業(yè)軟件的自動(dòng)化測(cè)試探索中,如何克服被測(cè)對(duì)象提出的挑戰(zhàn),從而摸索且實(shí)踐出的一套適合工業(yè)軟件的自動(dòng)化測(cè)試解決方案,并對(duì)解決方案中的優(yōu)秀實(shí)踐進(jìn)行了介紹。1引言

軟件質(zhì)量需要測(cè)試,自動(dòng)化測(cè)試可以改善產(chǎn)品質(zhì)量,并保持高標(biāo)準(zhǔn)的代碼卓越性。軟件測(cè)試的經(jīng)典定義是:在規(guī)定的條件下對(duì)程序進(jìn)行操作,以發(fā)現(xiàn)程序錯(cuò)誤,衡量軟件質(zhì)量,并對(duì)其是否能滿足設(shè)計(jì)要求進(jìn)行評(píng)估的過程。自動(dòng)化測(cè)試通過讓機(jī)器代替人執(zhí)行測(cè)試,自動(dòng)執(zhí)行大量的測(cè)試用例,甚至完成某些手工測(cè)試無法完成的測(cè)試工作,從而達(dá)到資源優(yōu)化、提高產(chǎn)品質(zhì)量的目標(biāo)。在針對(duì)特殊行業(yè)軟件進(jìn)行自動(dòng)化測(cè)試探索過程中,遇到的困難點(diǎn)來自于兩個(gè)維度:一是被測(cè)試軟件自身的特點(diǎn),對(duì)自動(dòng)化測(cè)試框架提出了挑戰(zhàn);二是自動(dòng)化測(cè)試框架當(dāng)前通用的難點(diǎn),在被測(cè)試軟件中恰是難以覆蓋的重點(diǎn)。面對(duì)困難與挑戰(zhàn),我們的自動(dòng)化測(cè)試團(tuán)隊(duì)迎難而上,最終實(shí)踐出一套適合工業(yè)軟件的優(yōu)秀自動(dòng)化測(cè)試方案。2被測(cè)系統(tǒng)介紹

HOLLiASMACSV6.5系列是和利時(shí)于2013年正式推出的第5代高可靠性DCS系統(tǒng),設(shè)計(jì)過程中充分采用了安全系統(tǒng)的設(shè)計(jì)理念,吸取國際工業(yè)電子技術(shù)和工業(yè)控制技術(shù)的最新成果,嚴(yán)格遵循國際先進(jìn)的工業(yè)標(biāo)準(zhǔn),采用全冗余、多重隔離、熱分析、容錯(cuò)等可靠性設(shè)計(jì)技術(shù),從而保證系統(tǒng)在復(fù)雜、惡劣的工業(yè)現(xiàn)場環(huán)境中能安穩(wěn)長滿優(yōu)地運(yùn)行。HOLLiASMACSV6.5系統(tǒng)基于國際標(biāo)準(zhǔn)和行業(yè)規(guī)范進(jìn)行設(shè)計(jì),集成了各行業(yè)的先進(jìn)控制算法平臺(tái),可根據(jù)不同行業(yè)的自動(dòng)化控制需求,提供更專業(yè)全面的一體化解決方案,從而實(shí)現(xiàn)了生產(chǎn)、設(shè)備和安全三大目標(biāo)的最佳協(xié)調(diào),并幫助用戶實(shí)現(xiàn)產(chǎn)品全生命周期維護(hù)成本的最小化和設(shè)備投資回報(bào)的最大化。HOLLiASMACSV6.5系統(tǒng)是基于以太網(wǎng)和PROFIBUS-DP現(xiàn)場總線構(gòu)架,可方便接入多種工業(yè)以太網(wǎng)和現(xiàn)場總線。HOLLiASMACSV6.5系統(tǒng)符合IEC61131-3標(biāo)準(zhǔn),集成了基于HART標(biāo)準(zhǔn)協(xié)議的AMS系統(tǒng),并可集成SIS、PLC、MES、ERP等系統(tǒng),同時(shí)提供了眾多知名廠家控制系統(tǒng)的驅(qū)動(dòng)接口,可實(shí)現(xiàn)智能現(xiàn)場儀表設(shè)備、控制系統(tǒng)、企業(yè)資源管理系統(tǒng)之間無縫信息流傳送,實(shí)現(xiàn)工廠智能化、管控一體化。MACSV6.5系統(tǒng)主要由工程師站、操作員站、歷史站、通訊站、控制站等部件組成,控制網(wǎng)的網(wǎng)絡(luò)節(jié)點(diǎn)由控制站和I/O模塊構(gòu)成。產(chǎn)品架構(gòu)如圖1所示。圖1產(chǎn)品架構(gòu)圖3工業(yè)軟件自動(dòng)化測(cè)試特點(diǎn)

與傳統(tǒng)的桌面應(yīng)用軟件相比,上文介紹的工業(yè)軟件有很多特點(diǎn)。從上到下的軟硬件一體,在軟件測(cè)試的過程中,需要考慮整體性。軟件自身結(jié)構(gòu)龐大,且處于分布式部署的模式,軟件自身的各個(gè)模塊間交互性非常強(qiáng),在軟件測(cè)試過程中,需要考慮交互性。除此以外,工業(yè)軟件自身對(duì)實(shí)時(shí)性、安全性等的要求非常高,測(cè)試人員在測(cè)試過程中,同樣需要考慮它的特性。那么,作為工業(yè)軟件的自動(dòng)化測(cè)試來說,定位既然是模擬手工測(cè)試人員的測(cè)試行為,那么,以上的所有工業(yè)軟件特性在自動(dòng)化測(cè)試框架的設(shè)計(jì)中,均需要考慮。就自動(dòng)化測(cè)試自身來講,軟件自動(dòng)化測(cè)試的分層理論倡導(dǎo)不同層次(階段)需要自動(dòng)化,從底到頂?shù)膶哟谓Y(jié)構(gòu)依次為:UT(單元測(cè)試)、接口層、UI(用戶界面)層。通過應(yīng)用程序的UI來操作該應(yīng)用程序的自動(dòng)測(cè)試稱為編碼的UI測(cè)試(CUIT)。這些測(cè)試包括對(duì)UI控件的功能測(cè)試,可以驗(yàn)證整個(gè)應(yīng)用程序(包括其用戶界面)是否正常運(yùn)行。編碼的UI測(cè)試對(duì)于在用戶界面中存在驗(yàn)證或其他邏輯的情況特別有用。針對(duì)工業(yè)應(yīng)用軟件當(dāng)前測(cè)試投入點(diǎn),結(jié)合自動(dòng)化測(cè)試UI層特性,設(shè)計(jì)出了一套適合工業(yè)軟件的自動(dòng)化測(cè)試框架。該測(cè)試框架既涵蓋無人值守的自動(dòng)化測(cè)試完整流程,包括從測(cè)試版本自動(dòng)推送一直到最終的測(cè)試結(jié)果反饋,又在實(shí)踐過程中納入了當(dāng)前軟件行業(yè)非常多的優(yōu)秀實(shí)踐,并對(duì)此進(jìn)行了改進(jìn)和方案集成。以下將分別對(duì)優(yōu)秀實(shí)踐的應(yīng)用做以說明。4優(yōu)秀實(shí)踐

4.1邊角測(cè)試集成方案在自動(dòng)化測(cè)試框架的設(shè)計(jì)中,ST環(huán)節(jié)定義為UI自動(dòng)化測(cè)試,那么,分析現(xiàn)有無論是開源還是商用自動(dòng)化測(cè)試工具,發(fā)現(xiàn)在對(duì)軟件的UI層進(jìn)行自動(dòng)化測(cè)試時(shí),均會(huì)面臨無法識(shí)別軟件自定義或二次開發(fā)的UI控件。在圖形結(jié)果的驗(yàn)證中,也很難做到識(shí)別與驗(yàn)證,特別是在屏幕顏色進(jìn)行閃變且圖形實(shí)時(shí)變化的情況。如果要達(dá)到自動(dòng)化完全模擬人工測(cè)試的操作及結(jié)果驗(yàn)證,那么以上的難點(diǎn)無法避免。鑒于此,我們?cè)赟T測(cè)試框架中,除了對(duì)UI上的控件進(jìn)行識(shí)別加入到測(cè)試代碼的對(duì)象庫中,框架中集成了另外一種完全不同測(cè)試思想的圖形對(duì)象庫。圖形對(duì)象庫的建立,使得對(duì)軟件界面對(duì)象的操作和結(jié)果驗(yàn)證,依賴的不再是框架是否可以識(shí)別的組件,而是圖形。對(duì)軟件進(jìn)行自動(dòng)化測(cè)試代碼編寫過程中,圖形對(duì)象的使用,可以克服自定義組件的困難,同樣的,圖形結(jié)果的驗(yàn)證問題迎刃而解。圖形識(shí)別的自動(dòng)化測(cè)試作為一個(gè)補(bǔ)充的邊角測(cè)試方法,與通用的基于組件識(shí)別的自動(dòng)化測(cè)試框架集成,在做UI層自動(dòng)化測(cè)試中,可測(cè)試范圍進(jìn)行了極大的擴(kuò)充。4.2測(cè)試數(shù)據(jù)管理對(duì)于自動(dòng)化測(cè)試或傳統(tǒng)手工測(cè)試來說,測(cè)試數(shù)據(jù)都是非常重要的資源,那么對(duì)于自動(dòng)化測(cè)試項(xiàng)目來說,如何更好地管理測(cè)試數(shù)據(jù),在自動(dòng)化框架設(shè)計(jì)中也要考慮。首先,采用測(cè)試代碼與測(cè)試數(shù)據(jù)分離的設(shè)計(jì)模式。這種隔離的設(shè)計(jì)使得測(cè)試代碼的結(jié)構(gòu)非常清晰,而不是雜亂無章的混亂結(jié)構(gòu),更大的好處在于,測(cè)試數(shù)據(jù)的分離使得我們?cè)谧詣?dòng)測(cè)試代碼中使用數(shù)據(jù)池的概念非常便于替換。測(cè)試代碼的復(fù)雜度降低了,測(cè)試的有效性也更好發(fā)揮。其次,通過配置文件靈活讀取和替換測(cè)試數(shù)據(jù)。以上章節(jié)中提到,測(cè)試框架中的測(cè)試對(duì)象有一部分是圖形對(duì)象,圖形對(duì)象作為測(cè)試對(duì)象同時(shí)作為測(cè)試數(shù)據(jù),如果得不到很好的管理,那么,在被測(cè)試軟件發(fā)生部分界面變化時(shí),維護(hù)的成本和工作量是非常巨大的??紤]到這個(gè)因素,設(shè)計(jì)采用了配置文件的方式,進(jìn)行此類數(shù)據(jù)的組織、管理和調(diào)用。最后,使用工具將測(cè)試數(shù)據(jù)資源進(jìn)行管理。在軟件開發(fā)的過程中,相信很多從事軟件工作的同行,無論哪個(gè)角色,均會(huì)用到支持軟件開發(fā)過程的大量工具。如團(tuán)隊(duì)管理使用進(jìn)行流程管控的工具,開發(fā)人員需要用到版本控制工具等。隨著VisualStudio產(chǎn)品線中TeamFoundationServer組件的公布,使得微軟開發(fā)團(tuán)隊(duì)在僵化的軟件項(xiàng)目實(shí)踐應(yīng)用中取得了巨大進(jìn)步。因此,在自動(dòng)化測(cè)試項(xiàng)目組織和測(cè)試數(shù)據(jù)資源管理中,使用的是TFS,我們使用的是TFS的單server結(jié)構(gòu),單server的類型已滿足自動(dòng)化項(xiàng)目的使用。完成項(xiàng)目配置后的TFS如圖2所示。圖2TFS配置完成狀態(tài)圖4.3測(cè)試結(jié)果監(jiān)視自動(dòng)化測(cè)試框架對(duì)于自動(dòng)化部署是采用分布式的設(shè)計(jì),那么,對(duì)于測(cè)試機(jī)集群的測(cè)試結(jié)果就需要進(jìn)行統(tǒng)一整合,并在此基礎(chǔ)上做出分析,使得測(cè)試人員定位錯(cuò)誤的代價(jià)最小。對(duì)于測(cè)試結(jié)果監(jiān)視,我們的實(shí)現(xiàn)是通過控制中心,即自動(dòng)化測(cè)試服務(wù)器將被測(cè)試機(jī)器的測(cè)試結(jié)果進(jìn)行依次回收,回收至服務(wù)器本地后,首先進(jìn)行測(cè)試結(jié)果的整合,將不同測(cè)試機(jī)的結(jié)果進(jìn)行既定模板的整合,整合后,數(shù)據(jù)做兩個(gè)方面的處理。一是將測(cè)試數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,從全局上掌握自動(dòng)化測(cè)試的運(yùn)行結(jié)果。二是詳細(xì)分析,將每個(gè)自動(dòng)化用例的測(cè)試結(jié)果進(jìn)行豐富的多維度測(cè)試結(jié)果解析。結(jié)果一主要支持管理人員及測(cè)試維護(hù)人員從全局上了解被測(cè)試產(chǎn)品測(cè)試質(zhì)量。結(jié)果二的主要目的是提供測(cè)試維護(hù)人員對(duì)于失敗進(jìn)行詳細(xì)及快速的定位。畢竟在自動(dòng)化用例規(guī)模過大的時(shí)候,自動(dòng)化的監(jiān)視對(duì)象主要還是失敗用例。自動(dòng)化測(cè)試結(jié)果如圖3所示。圖3自動(dòng)化測(cè)試結(jié)果展示圖4.4自動(dòng)化測(cè)試用例設(shè)計(jì)與測(cè)試代碼質(zhì)量保證在我們的測(cè)試團(tuán)隊(duì)中,自動(dòng)化測(cè)試用例代碼的編寫是多人協(xié)作開發(fā)的模式,對(duì)于如何保障用例本身的代碼質(zhì)量,我們做了很多嘗試和努力,以兩個(gè)實(shí)踐中有效嘗試為例,在該部分做個(gè)說明。結(jié)構(gòu)化代碼設(shè)計(jì),以便于更簡單地復(fù)制和改寫用例。測(cè)試代碼由多人開發(fā),在過程中,有很多重復(fù)性的代碼,那么,將這些部分進(jìn)行模塊化處理,供公共調(diào)用,有效減少了測(cè)試代碼量,維護(hù)代價(jià)非常小。自動(dòng)化代碼的代碼檢視。通過代碼的交叉檢視,不僅能發(fā)現(xiàn)個(gè)人代碼過程中的錯(cuò)誤及不符合規(guī)范項(xiàng),還能在檢視別人的代碼中提升自我。前提是我們的自動(dòng)化團(tuán)隊(duì)形成了自己的自動(dòng)化代碼規(guī)范且包含了自動(dòng)化用例設(shè)計(jì)指導(dǎo)原則等。當(dāng)前,代碼檢視不能側(cè)重于發(fā)現(xiàn)代碼缺陷,它是一個(gè)監(jiān)督項(xiàng),可以使我們的團(tuán)隊(duì)不斷提升自動(dòng)化測(cè)試代碼質(zhì)量。4.5部署和管理對(duì)于自動(dòng)化測(cè)試當(dāng)前耗時(shí)和可預(yù)見的未來用例及運(yùn)行時(shí)長規(guī)模來說,自動(dòng)化架構(gòu)設(shè)計(jì)之初運(yùn)行環(huán)境必須采用分布式部署,才能滿足自動(dòng)化構(gòu)建時(shí)長的要求。因被測(cè)軟件部署于Windows平臺(tái),設(shè)計(jì)使用PowerShell及PowerShellDSC來完成自動(dòng)化測(cè)試整體的部署和管理。此設(shè)計(jì)具有強(qiáng)大的兼容性,完全兼容Windows平臺(tái)上的其它調(diào)用,且基于平臺(tái)具備很好的可擴(kuò)展性,也可以進(jìn)一步利用.NETFramework的強(qiáng)大功能。在此特別需要說明一下的是PowerShellDSC。在集群機(jī)器管理中,通過使用PowerShellDSC保持自動(dòng)化運(yùn)行環(huán)境的可控和一致性,體現(xiàn)在操作系統(tǒng)和被測(cè)試應(yīng)用軟件上。通過它的使用同樣降低了腳本的復(fù)雜度,可大幅度提高迭代速度。將環(huán)境從結(jié)構(gòu)中分離出來,此類模型設(shè)計(jì)同樣契合與DevOps理念。自動(dòng)化測(cè)試部署如圖4所示。圖4自動(dòng)化測(cè)試部署圖4.6持續(xù)集成自動(dòng)化測(cè)試想要發(fā)揮最大化的價(jià)值,就不能不涉及持續(xù)集成。在不斷迭代的被測(cè)試軟件版本中,自動(dòng)化測(cè)試的防護(hù)網(wǎng)持續(xù)攔截且保持測(cè)試標(biāo)準(zhǔn)的一致性,這是自動(dòng)化測(cè)試的理想應(yīng)用狀態(tài),因此,我們的自動(dòng)化測(cè)試方案設(shè)計(jì)中關(guān)于持續(xù)集成的落地在此做一說明。開發(fā)代碼一旦入庫,通過配置的版本構(gòu)建,會(huì)經(jīng)過持續(xù)自動(dòng)化的質(zhì)量保證環(huán)節(jié)。主要的構(gòu)建步驟如圖5所示。圖5自動(dòng)化測(cè)試持續(xù)構(gòu)建圖4.7TestOps的展望新的理念與技術(shù)層出不窮,對(duì)于工業(yè)軟件的自動(dòng)化測(cè)試設(shè)計(jì)方案也是在不斷接受新鮮事物的過程中集成、完善、逐步優(yōu)化的。顧名思義,TestOps即測(cè)試運(yùn)維。從測(cè)試的角度推動(dòng)研發(fā)和運(yùn)維,將測(cè)試落地到整個(gè)研發(fā)體系的關(guān)鍵崗位。它關(guān)注全生命周期的質(zhì)量控制、測(cè)試過程接地氣、關(guān)注環(huán)境及代碼驗(yàn)證、關(guān)注質(zhì)量統(tǒng)計(jì)分析及回溯。概念圖如圖6所示。圖6TestOps概念圖在優(yōu)秀的TestOps體系中,我們關(guān)于工業(yè)軟件自動(dòng)化測(cè)試框架的設(shè)計(jì)及整體的CI設(shè)計(jì)已經(jīng)有部分優(yōu)秀的實(shí)踐活動(dòng)進(jìn)行了落地。但是將測(cè)試落地到整個(gè)研發(fā)體系的關(guān)鍵崗位,我們做得還不夠,有很大提升空間。例如如何讓測(cè)試團(tuán)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論