




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
基于SCADE模型的車載ATP軟件高效測試方法研究一、緒論1.1研究背景與意義隨著城市化進程的加速,城市軌道交通作為一種高效、便捷、環(huán)保的公共交通方式,在各大城市中得到了廣泛的應用和快速的發(fā)展。截至2021年底,中國大陸地區(qū)城市軌道交通運營線路283條,運營線路總長度9207公里,并且這個數(shù)字還在持續(xù)增長。在城市軌道交通系統(tǒng)中,列車自動防護(ATP,AutomaticTrainProtection)系統(tǒng)是確保列車安全運行的核心子系統(tǒng),對保障乘客生命財產(chǎn)安全、提高運營效率起著舉足輕重的作用。ATP系統(tǒng)通過實時監(jiān)測列車的運行狀態(tài),如速度、位置等,并與預設的安全參數(shù)進行對比,當列車運行狀態(tài)接近或超出安全范圍時,自動采取相應的防護措施,如實施制動,使列車減速或停車,從而防止列車超速、冒進信號、追尾等事故的發(fā)生。其主要功能包括速度監(jiān)督、方向監(jiān)督、車門監(jiān)督、緊急制動監(jiān)督、報文監(jiān)督等。例如,在速度監(jiān)督方面,車載ATP接收包括行車許可、線路參數(shù)、臨時限度等在內(nèi)的地面信息,與列車實際運行速度進行對比,若實際運行速度超過目標速度,則自動實施制動,以保證列車安全運行??梢哉f,ATP系統(tǒng)是列車運行安全的最后一道防線,其可靠性和安全性直接關系到整個城市軌道交通系統(tǒng)的正常運營和社會的穩(wěn)定。傳統(tǒng)的車載ATP軟件測試方法主要包括黑盒測試、白盒測試和灰盒測試等。黑盒測試主要關注軟件的輸入和輸出,不考慮軟件內(nèi)部的實現(xiàn)細節(jié),通過設計大量的測試用例來驗證軟件功能是否符合需求規(guī)格說明書的要求。白盒測試則側重于對軟件內(nèi)部結構和代碼邏輯的測試,要求測試人員了解軟件的內(nèi)部實現(xiàn)細節(jié),通過對代碼的覆蓋率分析來評估測試的充分性?;液袦y試則結合了黑盒測試和白盒測試的特點,既關注軟件的功能,又對軟件的內(nèi)部結構有一定的了解。然而,這些傳統(tǒng)測試方法在面對日益復雜的車載ATP軟件時,逐漸暴露出一些不足之處。隨著城市軌道交通技術的不斷發(fā)展,車載ATP軟件的功能越來越復雜,代碼規(guī)模也越來越大。傳統(tǒng)的測試方法在測試用例的設計和生成上存在一定的盲目性,難以全面覆蓋軟件的各種復雜功能和邊界情況,容易遺漏潛在的軟件缺陷。例如,在面對一些復雜的邏輯判斷和狀態(tài)轉換時,傳統(tǒng)測試方法很難設計出足夠全面的測試用例來驗證其正確性。而且,傳統(tǒng)測試方法主要依賴人工進行測試用例的設計和執(zhí)行,測試效率低下,耗費大量的人力、物力和時間成本。在軟件項目進度緊張的情況下,難以保證測試的充分性和及時性。此外,傳統(tǒng)測試方法對測試結果的分析和評估也相對主觀,缺乏有效的量化指標,難以準確判斷軟件的質量和可靠性。為了克服傳統(tǒng)測試方法的不足,提高車載ATP軟件的測試效率和質量,基于SCADE(SafetyCriticalApplicationDevelopmentEnvironment)模型的測試方法應運而生。SCADE是一種專門用于開發(fā)安全關鍵系統(tǒng)軟件的模型化開發(fā)環(huán)境,具有高度的形式化和自動化特點。它采用基于模型的開發(fā)(MBD,Model-BasedDevelopment)方法,從系統(tǒng)需求開始,通過建立精確的形式化模型來描述系統(tǒng)的行為和功能,然后利用模型自動生成高質量的代碼,并進行嚴格的驗證和測試。基于SCADE模型的測試方法具有諸多優(yōu)勢。它能夠通過形式化建模,將車載ATP軟件的功能和行為以數(shù)學模型的方式精確描述,有效避免了傳統(tǒng)方法中需求理解不一致和描述模糊的問題,大大提高了測試的準確性和全面性。例如,在對列車速度控制功能進行測試時,可以通過SCADE模型精確描述速度控制的邏輯和邊界條件,從而生成更加全面和準確的測試用例。該方法利用模型自動生成測試用例,極大地提高了測試效率,減少了人工測試的工作量和錯誤率。同時,基于模型的測試結果具有明確的量化指標和形式化驗證依據(jù),能夠更加客觀、準確地評估軟件的質量和可靠性,為車載ATP軟件的安全性和穩(wěn)定性提供有力保障。在當前城市軌道交通快速發(fā)展,對車載ATP軟件安全性和可靠性要求日益提高的背景下,研究基于SCADE模型的車載ATP軟件測試方法具有重要的現(xiàn)實意義和應用價值。1.2國內(nèi)外研究現(xiàn)狀在軟件測試領域,基于模型的測試(MBT,Model-BasedTesting)已成為研究熱點,國內(nèi)外眾多學者和科研機構對此展開了深入研究。國外方面,早在20世紀90年代,MBT的概念就已被提出,經(jīng)過多年的發(fā)展,相關理論和技術日益成熟。一些知名企業(yè)如西門子、阿爾斯通等在軌道交通領域積極應用基于模型的測試技術,取得了顯著的成果。例如,西門子公司在其列車控制系統(tǒng)的開發(fā)過程中,采用基于模型的測試方法,有效提高了軟件測試的效率和質量,減少了軟件缺陷的數(shù)量。在學術研究上,國外學者在MBT的理論基礎、測試用例生成算法、模型驗證等方面取得了一系列的研究成果。如[文獻作者1]提出了一種基于狀態(tài)機模型的測試用例生成算法,通過對狀態(tài)機模型的分析和遍歷,自動生成覆蓋各種狀態(tài)和轉換的測試用例,提高了測試用例的覆蓋率和有效性。[文獻作者2]研究了基于模型的測試在實時系統(tǒng)中的應用,提出了一種結合時間約束的模型驗證方法,能夠有效驗證實時系統(tǒng)中時間相關的屬性和行為。國內(nèi)對基于模型的測試研究起步相對較晚,但近年來發(fā)展迅速。隨著國內(nèi)軌道交通行業(yè)的快速發(fā)展,對車載ATP軟件的安全性和可靠性要求不斷提高,基于模型的測試技術逐漸受到重視。許多高校和科研機構如北京交通大學、西南交通大學等開展了相關研究工作。北京交通大學的研究團隊在基于模型的測試技術在軌道交通信號系統(tǒng)中的應用方面進行了深入研究,提出了針對軌道交通信號系統(tǒng)特點的模型構建方法和測試用例生成策略。國內(nèi)企業(yè)也在積極探索基于模型的測試技術在車載ATP軟件測試中的應用,如中國通號在其車載ATP產(chǎn)品的研發(fā)過程中,引入基于模型的測試方法,提升了產(chǎn)品的質量和競爭力。在列控領域,建模及驗證方法也是研究的重點。國外在列控系統(tǒng)的形式化建模和驗證方面處于領先地位,采用了多種先進的建模語言和驗證工具。例如,使用UML(UnifiedModelingLanguage)、SysML(SystemsModelingLanguage)等建模語言對列控系統(tǒng)進行建模,利用SPIN、UPPAAL等模型檢測工具對模型進行驗證。這些方法能夠有效地發(fā)現(xiàn)列控系統(tǒng)中的潛在問題和缺陷,提高系統(tǒng)的安全性和可靠性。國內(nèi)在列控系統(tǒng)建模及驗證方面也取得了一定的進展,結合國內(nèi)列控系統(tǒng)的特點和需求,研究適合的建模和驗證方法。如[文獻作者3]采用Petri網(wǎng)對列控系統(tǒng)進行建模,利用Petri網(wǎng)的圖形化表示和數(shù)學分析能力,對列控系統(tǒng)的行為和性能進行分析和驗證。盡管國內(nèi)外在基于模型的測試以及列控領域建模及驗證方面取得了豐碩的成果,但仍存在一些不足之處。在基于模型的測試中,測試模型的準確性和完整性難以保證,模型與實際軟件系統(tǒng)之間可能存在差異,導致測試結果的可靠性受到影響。測試用例的生成算法還需要進一步優(yōu)化,以提高測試用例的覆蓋率和有效性,減少冗余測試用例的生成。在列控領域建模及驗證方面,不同建模方法和驗證工具之間的兼容性和集成性有待提高,缺乏統(tǒng)一的標準和規(guī)范,使得在實際應用中難以選擇合適的方法和工具。對列控系統(tǒng)中復雜的動態(tài)行為和實時性要求的建模和驗證還存在一定的困難,需要進一步研究有效的解決方法。1.3研究內(nèi)容與方法本論文圍繞基于SCADE模型的車載ATP軟件測試方法展開深入研究,主要研究內(nèi)容包括以下幾個方面:首先是SCADE模型在車載ATP軟件測試中的應用原理研究,深入剖析SCADE模型的特點、建模方法以及其在車載ATP軟件測試中的工作機制,明確SCADE模型如何與車載ATP軟件系統(tǒng)進行有效結合,為后續(xù)的測試方法研究奠定理論基礎。例如,研究SCADE模型如何精確描述車載ATP軟件的復雜功能和行為,以及如何利用其形式化特性提高測試的準確性和可靠性。其次是基于SCADE模型的車載ATP軟件測試用例生成方法研究,依據(jù)SCADE模型的特性,探索有效的測試用例生成策略和算法,確保生成的測試用例能夠全面覆蓋車載ATP軟件的各種功能和邊界情況,提高測試用例的覆蓋率和有效性。比如,研究如何根據(jù)SCADE模型中的狀態(tài)機、數(shù)據(jù)流等元素,自動生成針對不同功能模塊和場景的測試用例,減少測試用例設計的盲目性和人工工作量。再者是基于SCADE模型的車載ATP軟件測試執(zhí)行與結果評估研究,搭建基于SCADE模型的測試環(huán)境,對生成的測試用例進行實際執(zhí)行,并研究如何對測試結果進行科學、準確的分析和評估,建立有效的測試結果評估指標體系,以便及時發(fā)現(xiàn)軟件中的缺陷和問題,為軟件的改進和優(yōu)化提供依據(jù)。例如,通過在模擬的列車運行環(huán)境中執(zhí)行測試用例,觀察車載ATP軟件的運行狀態(tài)和輸出結果,利用評估指標體系對測試結果進行量化分析,判斷軟件是否滿足安全和性能要求。在研究方法上,本論文將綜合采用多種方法。理論分析方法,通過對車載ATP軟件測試相關理論、SCADE模型技術原理等進行深入研究和分析,構建基于SCADE模型的車載ATP軟件測試方法的理論框架,為研究提供堅實的理論支撐。例如,對軟件測試的基本原理、形式化方法在軟件測試中的應用等進行深入探討,明確基于SCADE模型的測試方法的理論基礎和優(yōu)勢。案例研究方法,選取實際的車載ATP軟件項目作為案例,運用基于SCADE模型的測試方法進行測試實踐,通過對實際案例的分析和總結,驗證該測試方法的可行性和有效性,同時發(fā)現(xiàn)實際應用中存在的問題并提出改進措施。比如,以某城市軌道交通線路的車載ATP軟件為案例,詳細分析基于SCADE模型的測試方法在該項目中的應用過程和效果。對比分析方法,將基于SCADE模型的測試方法與傳統(tǒng)的車載ATP軟件測試方法進行對比,從測試效率、測試覆蓋率、測試成本等多個方面進行比較和分析,突出基于SCADE模型的測試方法的優(yōu)勢和特點,為該方法的推廣應用提供有力的依據(jù)。1.4論文結構安排本論文共分為六章,各章節(jié)內(nèi)容安排如下:第一章緒論:闡述研究背景與意義,詳細分析城市軌道交通發(fā)展現(xiàn)狀以及車載ATP軟件測試的重要性,指出傳統(tǒng)測試方法的不足,引入基于SCADE模型的測試方法。同時,全面綜述國內(nèi)外在基于模型的測試以及列控領域建模及驗證方面的研究現(xiàn)狀,明確本研究的切入點和創(chuàng)新點。最后,介紹本論文的研究內(nèi)容和采用的研究方法,為后續(xù)章節(jié)的展開奠定基礎。第二章SCADE模型及車載ATP軟件概述:對SCADE模型進行深入介紹,包括其特點、功能、建模語言和開發(fā)環(huán)境等方面,使讀者對SCADE模型有全面的認識。詳細闡述車載ATP軟件的功能需求、架構設計以及工作原理,分析其復雜性和對測試的特殊要求,為后續(xù)研究基于SCADE模型的車載ATP軟件測試方法提供必要的理論基礎。第三章基于SCADE模型的車載ATP軟件測試用例生成:深入研究基于SCADE模型生成車載ATP軟件測試用例的方法。分析測試用例生成的原理和策略,結合SCADE模型的特點,提出具體的測試用例生成算法和技術,如基于狀態(tài)機的測試用例生成、基于數(shù)據(jù)流的測試用例生成等。通過實際案例展示如何利用這些方法生成有效的測試用例,提高測試用例的覆蓋率和有效性。第四章基于SCADE模型的車載ATP軟件測試執(zhí)行與評估:搭建基于SCADE模型的車載ATP軟件測試環(huán)境,包括測試工具的選擇和配置、測試平臺的搭建等。詳細介紹測試執(zhí)行的過程和方法,以及如何對測試結果進行分析和評估。建立科學合理的測試結果評估指標體系,如缺陷密度、測試覆蓋率、故障發(fā)現(xiàn)率等,通過對測試結果的量化分析,準確判斷車載ATP軟件的質量和可靠性。第五章案例分析:選取實際的車載ATP軟件項目作為案例,運用前面章節(jié)提出的基于SCADE模型的測試方法進行全面的測試實踐。詳細描述案例背景、測試過程和結果,對測試結果進行深入分析,驗證基于SCADE模型的測試方法在實際應用中的可行性和有效性。同時,總結案例實踐中遇到的問題和解決方法,為其他項目提供參考和借鑒。第六章結論與展望:對整個研究工作進行全面總結,概括基于SCADE模型的車載ATP軟件測試方法的研究成果和創(chuàng)新點,總結研究過程中的經(jīng)驗和教訓。對未來的研究方向進行展望,提出進一步改進和完善基于SCADE模型的測試方法的建議,以及該方法在車載ATP軟件測試領域的應用前景和發(fā)展趨勢。二、SCADE模型與車載ATP軟件概述2.1SCADE模型簡介SCADE(SafetyCriticalApplicationDevelopmentEnvironment),即安全關鍵應用開發(fā)環(huán)境,是一種基于模型驅動工程(Model-DrivenEngineering,MDE)方法的先進軟件工具套件,在高安全性要求的系統(tǒng)開發(fā)領域占據(jù)著重要地位。它由法國愛斯特爾技術公司開發(fā),在開發(fā)過程中聯(lián)合了航空電子、汽車電子、軍用飛機以及核電站控制等多個領域的合作伙伴,充分融合了不同領域對嵌入式軟件開發(fā)的多樣化需求,進而提出了一套全面且高效的高安全性嵌入式軟件開發(fā)自動化工具及相應的方法學。SCADE最為突出的特點之一便是其圖形化建模方式。它提供了兩種主要的圖形化建模機制,分別是數(shù)據(jù)流圖和有限狀態(tài)機。數(shù)據(jù)流圖主要用于描述系統(tǒng)中數(shù)據(jù)的流動和處理過程,能夠清晰地展示系統(tǒng)各個部分之間的數(shù)據(jù)交互關系,適用于連續(xù)性系統(tǒng)的建模;有限狀態(tài)機則專注于描述系統(tǒng)在不同狀態(tài)下的行為以及狀態(tài)之間的轉換條件,對于離散性系統(tǒng)的建模具有獨特優(yōu)勢。這兩種建模機制都建立在嚴格的數(shù)學模型基礎之上,擁有嚴格的數(shù)學語義,從根本上保證了設計模型的精確性、完整性、一致性和無二義性,這些特性對于高安全性系統(tǒng)的開發(fā)至關重要。例如,在航空航天領域的飛行控制系統(tǒng)開發(fā)中,利用SCADE的數(shù)據(jù)流圖可以精確地描述傳感器數(shù)據(jù)的采集、傳輸和處理流程,有限狀態(tài)機則能準確地定義飛行控制邏輯在不同飛行階段(起飛、巡航、降落等)的狀態(tài)轉換和行為,從而確保飛行控制系統(tǒng)的高可靠性和安全性。SCADE的應用領域十分廣泛,涵蓋了航空、國防、軌道交通、能源和重工業(yè)等多個對安全性和可靠性要求極高的行業(yè)。在航空領域,SCADE被用于開發(fā)飛機的飛行控制軟件、航空電子系統(tǒng)等關鍵部件,其生成的代碼滿足航空業(yè)嚴格的DO-178B國際標準,達到A級水平,為飛機的安全飛行提供了有力保障。以空中客車的A340/500項目為例,SCADE的使用不僅提高了軟件開發(fā)的效率,還極大地提升了軟件的質量和安全性,減少了后期驗證和測試的工作量。在軌道交通領域,SCADE可用于開發(fā)列車的控制系統(tǒng)、信號系統(tǒng)等,通過對列車運行狀態(tài)的精確建模和分析,實現(xiàn)對列車的安全監(jiān)控和有效控制。例如,在城市軌道交通的列車自動防護(ATP)系統(tǒng)開發(fā)中,SCADE能夠準確地描述ATP系統(tǒng)的各種功能和邏輯,如速度監(jiān)控、位置檢測、制動控制等,為ATP系統(tǒng)的可靠性和安全性奠定了堅實的基礎。在軟件測試中,SCADE模型展現(xiàn)出諸多顯著的優(yōu)勢。利用SCADE進行建模的過程,實際上是對系統(tǒng)需求和功能的一種精確形式化描述。這種形式化描述能夠有效地避免傳統(tǒng)開發(fā)方式中由于需求理解不一致和描述模糊所導致的問題,使得測試人員能夠更加準確地把握系統(tǒng)的功能和行為,從而設計出更具針對性和全面性的測試用例。SCADE具備強大的模型檢查和驗證功能。在模型建立之后,SCADE可以對模型進行局部和全局的檢查,及時發(fā)現(xiàn)模型中的不一致、類型不匹配、數(shù)據(jù)回路等錯誤,并以超文本的方式進行定位,方便開發(fā)人員進行糾錯。同時,SCADE內(nèi)置的形式驗證功能,無需執(zhí)行模型或借助測試向量,就能檢驗模型是否滿足安全性、可靠性等多方面的要求。若模型存在不安全因素,它能夠給出反例,開發(fā)人員可以將反例在仿真器中調(diào)出進行仿真,深入觀察系統(tǒng)進入不安全狀態(tài)的具體過程,這在很大程度上提高了系統(tǒng)的安全性和可靠性,也為軟件測試提供了有力的支持。SCADE還支持模擬仿真功能。在系統(tǒng)建模完成后,開發(fā)人員可以對整個系統(tǒng)或其中的任意模塊進行模擬仿真。仿真器基于SCADE生成的代碼運行,是一個強大的可視化圖形調(diào)試工具,能夠設置斷言、斷點、中斷條件,方便測試人員檢查輸入數(shù)據(jù)、內(nèi)部變量和輸出數(shù)據(jù)的值,還可以記錄和回放仿真場景。對于具有大量輸入輸出的系統(tǒng),SCADE工具能夠便捷地將測試人員感興趣的信號集中起來,以圖形方式記錄仿真時這些信號的變化情況,便于進行檢查和分析。通過模擬仿真,測試人員可以在軟件開發(fā)的早期階段對系統(tǒng)的功能和性能進行驗證,及時發(fā)現(xiàn)潛在的問題,降低后期修復問題的成本。此外,SCADE能夠從設計模型自動生成高質量的源代碼,生成的代碼滿足一系列安全性特征,如具有有界的堆棧、無動態(tài)指針、無遞歸調(diào)用、無死代碼等。并且,SCADE生成的代碼完全面向工程,可以直接嵌入到所開發(fā)的系統(tǒng)中,無需任何修改,同時保證生成代碼的行為與仿真行為完全一致。這一特性使得在進行軟件測試時,測試環(huán)境與實際運行環(huán)境更加接近,提高了測試結果的可靠性和有效性。2.2車載ATP軟件功能與特點列車自動防護(ATP)系統(tǒng)作為城市軌道交通列車運行控制系統(tǒng)的核心安全子系統(tǒng),肩負著保障列車運行安全的重任。車載ATP軟件作為ATP系統(tǒng)的關鍵組成部分,其功能的可靠性和穩(wěn)定性直接關系到列車的運行安全和乘客的生命財產(chǎn)安全。車載ATP軟件的基本原理是通過實時采集列車的運行狀態(tài)信息,如速度、位置、運行方向等,并結合地面?zhèn)鱽淼木€路信息和控制命令,運用復雜的算法和邏輯進行分析和判斷。一旦檢測到列車運行狀態(tài)出現(xiàn)異常或接近危險閾值,車載ATP軟件會立即采取相應的防護措施,如實施制動、限制速度等,以確保列車始終在安全的狀態(tài)下運行。例如,當車載ATP軟件監(jiān)測到列車實際運行速度超過了允許的最高速度時,它會自動觸發(fā)制動系統(tǒng),使列車減速,直至速度恢復到安全范圍內(nèi)。從功能層面來看,車載ATP軟件具備豐富且關鍵的功能。速度監(jiān)督與控制是其核心功能之一,它持續(xù)監(jiān)測列車的運行速度,并與預設的速度限制進行實時比較。當列車速度接近或超過限制速度時,軟件會及時發(fā)出警報并自動實施制動,以防止列車超速運行。位置檢測與定位功能也十分重要,通過與地面設備的交互以及車載傳感器的配合,車載ATP軟件能夠精確確定列車在軌道上的位置,為后續(xù)的安全控制提供準確的數(shù)據(jù)支持。例如,利用應答器、軌道電路等設備,車載ATP軟件可以獲取列車的絕對位置信息,從而確保列車在正確的區(qū)間運行,避免出現(xiàn)越界等危險情況。車載ATP軟件還承擔著車門控制與監(jiān)督的任務。在列車??空九_時,它會根據(jù)列車的位置和狀態(tài)信息,控制車門的開啟和關閉,確保車門操作的安全性和準確性。同時,軟件會實時監(jiān)測車門的狀態(tài),一旦發(fā)現(xiàn)車門異常開啟或未正常關閉,會立即采取相應的措施,如觸發(fā)緊急制動、發(fā)出警報等,以保障乘客的安全。另外,車載ATP軟件還具備故障診斷與報警功能,它能夠實時監(jiān)測自身及相關設備的運行狀態(tài),一旦檢測到故障,會迅速進行診斷并發(fā)出報警信息,通知維修人員及時進行處理,從而提高系統(tǒng)的可用性和可靠性。在安全需求方面,車載ATP軟件必須嚴格遵循極高的安全標準,以確保列車運行的絕對安全。它需要具備高度的可靠性,能夠在各種復雜的環(huán)境條件下穩(wěn)定運行,減少因軟件故障導致的安全事故。為了實現(xiàn)這一目標,通常采用冗余設計、故障容錯等技術手段。例如,采用多重冗余的處理器和通信鏈路,當某一組件出現(xiàn)故障時,其他冗余組件能夠立即接管工作,保證系統(tǒng)的正常運行。車載ATP軟件還必須滿足嚴格的實時性要求。由于列車運行速度快,任何延遲都可能導致嚴重的安全后果,因此軟件需要能夠在極短的時間內(nèi)對列車的運行狀態(tài)變化做出響應,及時發(fā)出控制指令。例如,在列車緊急制動的情況下,車載ATP軟件需要在毫秒級的時間內(nèi)完成制動指令的發(fā)送,以確保列車能夠在最短的距離內(nèi)停車。并且,軟件需要具備強大的抗干擾能力,能夠有效抵御來自電磁干擾、信號干擾等各種外部干擾,保證數(shù)據(jù)的準確傳輸和處理。例如,通過采用屏蔽技術、濾波技術等,減少電磁干擾對車載ATP軟件的影響,確保其穩(wěn)定運行。車載ATP軟件的特點對測試工作產(chǎn)生了深遠的影響。其功能的復雜性和多樣性決定了測試用例的設計需要全面且細致,要涵蓋各種可能的運行場景和邊界條件,以確保軟件的每一個功能都能得到充分的測試。例如,在測試速度監(jiān)督與控制功能時,不僅要測試正常速度范圍內(nèi)的情況,還需要測試速度接近限制速度、超過限制速度以及速度突變等各種邊界情況,以驗證軟件在不同情況下的控制邏輯是否正確。車載ATP軟件對安全性和可靠性的極高要求,使得測試過程必須嚴格且精確,需要采用先進的測試技術和工具,以確保能夠發(fā)現(xiàn)潛在的安全隱患和缺陷。例如,運用形式化驗證技術對軟件的安全性進行驗證,通過數(shù)學模型和邏輯推理來證明軟件是否滿足安全規(guī)范。同時,為了滿足實時性要求,測試工作需要對軟件的響應時間進行嚴格的測試和評估,確保軟件在規(guī)定的時間內(nèi)完成各項任務。在測試過程中,需要模擬各種實時場景,測量軟件的響應時間,判斷其是否符合實時性要求。而軟件的抗干擾能力也需要在測試中進行專門的驗證,通過模擬各種干擾環(huán)境,測試軟件在干擾情況下的運行穩(wěn)定性和數(shù)據(jù)準確性。2.3SCADE模型在車載ATP軟件測試中的適用性分析從功能需求角度來看,車載ATP軟件的功能復雜多樣,涵蓋速度監(jiān)督、位置檢測、車門控制、故障診斷等多個關鍵方面,且各功能之間存在緊密的邏輯關聯(lián)和數(shù)據(jù)交互。SCADE模型憑借其獨特的圖形化建模方式,能夠以直觀清晰的方式對這些復雜功能進行精確描述。例如,通過數(shù)據(jù)流圖可以詳細展示速度信息、位置信息等數(shù)據(jù)在車載ATP軟件各個模塊之間的流動和處理過程,明確數(shù)據(jù)的來源、去向以及處理邏輯。利用有限狀態(tài)機能夠準確刻畫車門控制、列車運行模式轉換等功能在不同狀態(tài)下的行為以及狀態(tài)之間的轉換條件,使得車載ATP軟件的功能邏輯一目了然。這種精確的描述方式有助于測試人員深入理解軟件的功能需求,從而有針對性地設計全面且有效的測試用例,確保軟件的各項功能都能得到充分的測試。在安全特性方面,車載ATP軟件的安全性至關重要,任何安全漏洞都可能導致嚴重的后果。SCADE模型具備強大的模型檢查和驗證功能,能夠對車載ATP軟件模型進行全面細致的檢查,及時發(fā)現(xiàn)模型中可能存在的不一致、類型不匹配、數(shù)據(jù)回路等潛在錯誤。通過形式驗證功能,無需實際執(zhí)行模型或借助測試向量,就能嚴格檢驗模型是否滿足安全性、可靠性等關鍵要求。若模型存在安全隱患,SCADE會給出具體的反例,測試人員可以將反例在仿真器中調(diào)出進行仿真,深入分析系統(tǒng)進入不安全狀態(tài)的具體過程,從而有針對性地對軟件進行改進和優(yōu)化,大大提高了車載ATP軟件的安全性和可靠性。例如,在對車載ATP軟件的速度監(jiān)督功能進行安全性驗證時,SCADE模型可以通過形式驗證確保在各種復雜情況下,軟件都能準確地監(jiān)測列車速度并及時采取制動措施,防止列車超速運行,保障列車運行安全。從測試過程的角度分析,SCADE模型的模擬仿真功能為車載ATP軟件的測試提供了便利。在測試過程中,可以對整個車載ATP軟件系統(tǒng)或其中的任意模塊進行模擬仿真,利用仿真器設置斷言、斷點、中斷條件,方便測試人員實時檢查輸入數(shù)據(jù)、內(nèi)部變量和輸出數(shù)據(jù)的值,還可以記錄和回放仿真場景。這使得測試人員能夠在不同的模擬場景下對車載ATP軟件進行測試,觀察軟件的運行狀態(tài)和輸出結果,及時發(fā)現(xiàn)軟件在不同工況下可能出現(xiàn)的問題。例如,通過模擬列車在不同線路條件、不同運行速度下的運行場景,對車載ATP軟件的速度監(jiān)督、位置檢測等功能進行測試,驗證軟件在各種實際運行場景下的正確性和穩(wěn)定性。SCADE能夠從設計模型自動生成高質量的源代碼,生成的代碼滿足一系列安全性特征,如具有有界的堆棧、無動態(tài)指針、無遞歸調(diào)用、無死代碼等。這使得在進行軟件測試時,測試環(huán)境與實際運行環(huán)境更加接近,提高了測試結果的可靠性和有效性。生成的代碼可以直接嵌入到所開發(fā)的系統(tǒng)中,無需任何修改,同時保證生成代碼的行為與仿真行為完全一致。這減少了因代碼實現(xiàn)與模型不一致而導致的測試誤差,使得測試結果更能真實反映車載ATP軟件的實際運行情況。三、基于SCADE模型的車載ATP軟件建模3.1車載ATP軟件功能分析速度監(jiān)控功能是車載ATP軟件的核心功能之一,對保障列車運行安全起著關鍵作用。其工作流程嚴謹且復雜,旨在確保列車始終在安全速度范圍內(nèi)運行。當列車啟動后,速度傳感器實時采集列車的運行速度數(shù)據(jù),并將這些數(shù)據(jù)快速傳輸給車載ATP軟件。軟件接收到速度數(shù)據(jù)后,立即與預先存儲在數(shù)據(jù)庫中的線路限速信息進行對比分析。線路限速信息涵蓋了各種不同的限速情況,包括固定限速,如彎道、道岔等特殊地段的限速;臨時限速,如因施工、惡劣天氣等原因設置的臨時限速。在對比過程中,若列車實際運行速度接近預設的限速閾值,車載ATP軟件會迅速啟動預警機制,通過聲光警報等方式向司機發(fā)出警告,提醒司機注意減速,以避免列車超速。一旦列車實際運行速度超過了限速閾值,車載ATP軟件會毫不猶豫地自動觸發(fā)制動系統(tǒng),實施緊急制動措施,使列車盡快減速,直至速度恢復到安全范圍內(nèi)。在制動過程中,軟件會持續(xù)監(jiān)測列車速度的變化,并根據(jù)速度變化情況實時調(diào)整制動力度,確保列車平穩(wěn)減速,避免因制動過猛或過緩而影響列車的安全運行。以某城市軌道交通線路為例,該線路存在一段彎道,固定限速為60km/h。當列車接近該彎道時,車載ATP軟件實時接收速度傳感器傳來的速度數(shù)據(jù)。假設列車當前速度為55km/h,接近限速閾值,軟件立即發(fā)出預警,提示司機減速。若司機未及時采取減速措施,列車速度繼續(xù)上升至62km/h,超過限速閾值,此時車載ATP軟件迅速自動觸發(fā)制動系統(tǒng),使列車減速。在制動過程中,軟件根據(jù)速度變化不斷調(diào)整制動力度,最終使列車在進入彎道前將速度降至60km/h以下,確保了列車在彎道處的安全運行。模式轉換功能是車載ATP軟件的另一個重要功能,它涉及列車在不同運行模式之間的切換,以適應不同的運行場景和需求。列車的運行模式通常包括完全監(jiān)控模式、部分監(jiān)控模式、目視行車模式、調(diào)車模式等,每種模式都有其特定的功能和適用范圍。在完全監(jiān)控模式下,車載ATP軟件能夠獲取全面的線路信息、列車位置信息以及速度信息等,根據(jù)這些信息精確生成目標距離模式曲線,并通過人機界面(HMI)清晰地向司機顯示列車運行速度、允許速度、目標速度和目標距離等關鍵信息,實現(xiàn)對列車的全方位安全監(jiān)控和精確控制,確保列車安全、高效地運行。當列車進入站臺停車時,可能需要轉換為調(diào)車模式,以便進行站內(nèi)的調(diào)車作業(yè),如車輛編組、轉線等。在調(diào)車模式下,車載ATP軟件會根據(jù)調(diào)車作業(yè)的特點和要求,對列車的速度和運行范圍進行嚴格限制,確保調(diào)車作業(yè)的安全進行。模式轉換并非隨意進行,而是需要滿足一系列嚴格的條件。從完全監(jiān)控模式轉換到部分監(jiān)控模式,通常是因為車載ATP軟件無法獲取完整的線路信息或列車位置信息,如應答器故障、通信中斷等情況。在這種情況下,為了保證列車能夠繼續(xù)運行,軟件會切換到部分監(jiān)控模式,但會對列車的運行速度和運行范圍進行相應的限制,以降低風險。在轉換過程中,車載ATP軟件會進行一系列的安全檢查和驗證,確保模式轉換的安全性和可靠性。它會檢查列車的當前狀態(tài),如速度、位置等,確認是否滿足轉換條件。還會與地面設備進行通信,獲取相關的確認信息,以確保轉換過程的準確性。停車制動功能是車載ATP軟件保障列車安全的重要防線之一,尤其是在列車進站停車和長時間停車時,起著至關重要的作用。當列車準備進站停車時,車載ATP軟件會根據(jù)列車的實時位置、速度以及站臺的位置信息,精確計算出合適的制動時機和制動力度。隨著列車逐漸接近站臺,軟件會逐漸增加制動力度,使列車平穩(wěn)減速,最終準確地??吭谡九_指定位置。在列車??空九_期間,車載ATP軟件會持續(xù)監(jiān)控列車的狀態(tài),確保列車不會發(fā)生溜車等危險情況。它會實時檢測列車的車輪轉速、列車的位置變化等信息,一旦發(fā)現(xiàn)列車有溜車的跡象,會立即觸發(fā)停車制動裝置,施加足夠的制動力,使列車保持靜止狀態(tài)。當列車需要長時間停車時,如在車輛段、停車場等場所,車載ATP軟件會啟動更加強化的停車制動措施。它會控制停車制動裝置施加更大的制動力,確保列車在長時間停車過程中不會因外界因素(如風力、地面坡度等)而發(fā)生移動。軟件還會與車輛的其他系統(tǒng)進行聯(lián)動,如與車輛的供電系統(tǒng)配合,確保在停車期間車輛的關鍵設備(如制動系統(tǒng)、監(jiān)控系統(tǒng)等)能夠正常運行,以維持停車制動的有效性。在某些特殊情況下,如遇到地震、火災等緊急情況,車載ATP軟件會立即觸發(fā)緊急停車制動,使列車在最短的時間內(nèi)停止運行,保障乘客和列車的安全。3.2SCADE建模方法與步驟SCADE建模以系統(tǒng)需求分析為起點,深入理解系統(tǒng)的功能、性能、安全等多方面需求,明確系統(tǒng)的輸入輸出、關鍵業(yè)務流程以及各種約束條件。以車載ATP軟件為例,需全面梳理其在速度監(jiān)控、模式轉換、停車制動等功能上的具體需求,如速度監(jiān)控中不同線路條件下的限速值、速度監(jiān)測的精度要求;模式轉換時各模式的觸發(fā)條件、轉換流程;停車制動時的制動時機、制動力度要求等。這些需求將為后續(xù)的建模工作提供明確的方向和依據(jù)。在SCADE中,數(shù)據(jù)流圖用于描述數(shù)據(jù)的流動和處理過程。首先確定系統(tǒng)中的數(shù)據(jù)源和數(shù)據(jù)宿,即數(shù)據(jù)的來源和最終去向。在車載ATP軟件中,速度傳感器、位置傳感器等是數(shù)據(jù)源,為系統(tǒng)提供列車的速度、位置等實時數(shù)據(jù);而列車的執(zhí)行機構,如制動裝置、牽引裝置等則是數(shù)據(jù)宿,接收系統(tǒng)發(fā)出的控制指令并執(zhí)行相應動作。接著,定義數(shù)據(jù)在系統(tǒng)中經(jīng)過的各個處理模塊,以及模塊之間的數(shù)據(jù)傳輸路徑和方式。例如,在速度監(jiān)控功能中,數(shù)據(jù)從速度傳感器傳輸至速度計算模塊,經(jīng)過計算處理后,再傳輸至限速比較模塊,與預設的限速值進行比較,根據(jù)比較結果生成相應的控制指令。通過這種方式,清晰地展示了數(shù)據(jù)在車載ATP軟件中的流動和處理邏輯。有限狀態(tài)機用于描述系統(tǒng)在不同狀態(tài)下的行為以及狀態(tài)之間的轉換。首先識別系統(tǒng)的各個狀態(tài),在車載ATP軟件的模式轉換功能中,存在完全監(jiān)控模式、部分監(jiān)控模式、目視行車模式、調(diào)車模式等多種狀態(tài)。針對每個狀態(tài),詳細定義其進入條件、退出條件以及在該狀態(tài)下系統(tǒng)的行為。完全監(jiān)控模式下,系統(tǒng)需滿足獲取全面線路信息、列車位置信息等條件才能進入,在該狀態(tài)下,系統(tǒng)實時生成目標距離模式曲線,對列車進行全方位監(jiān)控。對于狀態(tài)之間的轉換,明確觸發(fā)轉換的事件和條件,從完全監(jiān)控模式轉換到部分監(jiān)控模式,可能是由于通信故障導致無法獲取完整線路信息這一事件觸發(fā),并且需要滿足一定的安全檢查條件才能完成轉換。在SCADE建模過程中,需要對模型進行不斷的驗證和優(yōu)化。利用SCADE自帶的模型檢查工具,對模型進行局部和全局的檢查,及時發(fā)現(xiàn)模型中的不一致、類型不匹配、數(shù)據(jù)回路等錯誤,并進行修正。通過模擬仿真,對模型在不同輸入條件下的行為進行測試,觀察模型的輸出是否符合預期,進一步優(yōu)化模型的性能和準確性。以車載ATP軟件的速度監(jiān)控模型為例,通過模擬不同的列車運行速度、線路限速條件等,驗證模型在各種情況下能否準確地進行速度比較和控制指令生成,若發(fā)現(xiàn)問題,及時調(diào)整模型的參數(shù)和邏輯。3.3基于SCADE的車載ATP軟件模型構建以某實際車載ATP軟件項目為例,在運用SCADE進行功能建模時,首先針對速度監(jiān)控功能構建狀態(tài)機模型。在該模型中,定義了“正常運行”“預警”“制動”三個主要狀態(tài)。當列車速度處于正常范圍內(nèi),系統(tǒng)處于“正常運行”狀態(tài),此時速度傳感器持續(xù)采集列車速度數(shù)據(jù),并實時傳輸至SCADE模型中進行處理。一旦列車速度接近預設的限速閾值,模型接收到速度變化信號,觸發(fā)狀態(tài)轉換,進入“預警”狀態(tài),通過車載ATP軟件的人機界面向司機發(fā)出聲光警報,提醒司機注意減速。若司機未及時采取有效措施,列車速度繼續(xù)上升超過限速閾值,模型再次觸發(fā)狀態(tài)轉換,進入“制動”狀態(tài),自動控制列車的制動系統(tǒng),實施制動操作,使列車減速。在狀態(tài)轉換過程中,明確規(guī)定了嚴格的觸發(fā)條件和轉換邏輯。從“正常運行”狀態(tài)轉換到“預警”狀態(tài),觸發(fā)條件為列車速度達到限速閾值的90%,當速度傳感器采集的速度數(shù)據(jù)經(jīng)計算達到該閾值時,模型依據(jù)預設的轉換邏輯,改變狀態(tài)標識,完成狀態(tài)轉換。從“預警”狀態(tài)轉換到“制動”狀態(tài),觸發(fā)條件是列車速度超過限速閾值,模型在接收到超過閾值的速度信號后,立即執(zhí)行制動控制邏輯,實現(xiàn)狀態(tài)的轉換。通過這樣精確的狀態(tài)機模型構建,能夠清晰地描述速度監(jiān)控功能在不同速度條件下的行為和狀態(tài)變化,為后續(xù)的測試用例生成和軟件測試提供了準確的模型基礎。對于模式轉換功能,同樣利用SCADE構建狀態(tài)機模型。定義了“完全監(jiān)控模式”“部分監(jiān)控模式”“目視行車模式”“調(diào)車模式”等多個狀態(tài)。在“完全監(jiān)控模式”下,車載ATP軟件能夠獲取全面的線路信息、列車位置信息以及速度信息等,模型處于穩(wěn)定的監(jiān)控狀態(tài),實時生成目標距離模式曲線,并通過人機界面向司機展示列車運行的關鍵信息。當出現(xiàn)通信故障、應答器故障等情況,導致車載ATP軟件無法獲取完整的線路信息或列車位置信息時,模型根據(jù)預設的故障檢測邏輯,觸發(fā)從“完全監(jiān)控模式”到“部分監(jiān)控模式”的狀態(tài)轉換。在“部分監(jiān)控模式”下,模型對列車的運行速度和運行范圍進行相應的限制,確保列車在有限信息的情況下仍能安全運行。在模式轉換過程中,詳細定義了每個狀態(tài)的進入條件、退出條件以及狀態(tài)之間的轉換關系。進入“完全監(jiān)控模式”的條件是車載ATP軟件成功獲取到所有必要的信息,包括準確的線路地圖、列車位置坐標、實時速度等。當這些信息中的關鍵部分缺失或出現(xiàn)錯誤,滿足退出“完全監(jiān)控模式”的條件,同時滿足進入“部分監(jiān)控模式”的條件,即檢測到通信故障或關鍵信息獲取失敗,模型執(zhí)行狀態(tài)轉換操作。這種精確的狀態(tài)機模型構建,能夠準確地模擬模式轉換功能在各種情況下的行為,為測試人員驗證模式轉換的正確性和可靠性提供了有效的工具。在數(shù)據(jù)模型方面,利用SCADE的建模功能,對車載ATP軟件運行過程中涉及的各類數(shù)據(jù)進行全面而細致的建模。速度數(shù)據(jù)模型是其中的關鍵部分,定義速度數(shù)據(jù)的來源為速度傳感器,速度傳感器通過與列車車輪或軸的連接,實時感知列車的運行速度,并將速度信號以電信號或數(shù)字信號的形式傳輸至車載ATP軟件。在SCADE模型中,將速度數(shù)據(jù)定義為一個連續(xù)變化的數(shù)值,其數(shù)據(jù)類型為浮點數(shù),以滿足對速度精度的要求。同時,為速度數(shù)據(jù)設定了合理的取值范圍,根據(jù)列車的設計運行速度和線路的限速規(guī)定,確定速度數(shù)據(jù)的最小值為0,最大值為列車的最高設計運行速度加上一定的安全余量。通過這樣的定義,確保在模型運行過程中,速度數(shù)據(jù)始終處于合理的范圍內(nèi),一旦出現(xiàn)超出范圍的數(shù)據(jù),能夠及時觸發(fā)異常處理機制,保證車載ATP軟件的安全運行。位置數(shù)據(jù)模型也是數(shù)據(jù)模型的重要組成部分。定義位置數(shù)據(jù)的來源包括應答器、軌道電路等設備。應答器安裝在軌道沿線特定位置,當列車經(jīng)過應答器時,車載ATP軟件通過應答器天線接收應答器發(fā)送的位置信息,包括應答器的編號、所在位置的坐標等。軌道電路則通過感應列車的位置,向車載ATP軟件提供列車所在的軌道區(qū)段信息。在SCADE模型中,將位置數(shù)據(jù)定義為一個包含坐標信息(如經(jīng)度、緯度或軌道上的相對位置)和位置標識(如軌道區(qū)段編號、應答器編號)的結構體。通過這種方式,能夠準確地表示列車在軌道上的位置,為速度監(jiān)控、模式轉換等功能提供準確的位置信息支持。在位置數(shù)據(jù)模型中,還定義了位置數(shù)據(jù)的更新頻率和精度要求,根據(jù)列車運行的實時性需求,確定位置數(shù)據(jù)的更新頻率為每秒多次,以確保車載ATP軟件能夠及時獲取列車的最新位置信息。精度要求則根據(jù)線路的復雜程度和安全要求,確定位置坐標的精度達到米級甚至更高,以滿足列車安全運行的需要。3.4模型驗證與優(yōu)化為了確?;赟CADE構建的車載ATP軟件模型的準確性和可靠性,需對模型進行全面的驗證。仿真分析是一種重要的驗證手段,通過在SCADE仿真環(huán)境中,模擬各種實際運行場景,如不同線路條件(彎道、坡道、直線等)、不同運行速度(低速、中速、高速)以及各種突發(fā)情況(如信號故障、制動系統(tǒng)故障等),觀察模型的輸出結果是否符合預期。例如,在模擬列車通過彎道的場景時,檢查模型是否能根據(jù)彎道半徑、限速等信息準確計算出列車應保持的安全速度,并控制列車的運行狀態(tài)。在模擬信號故障場景時,驗證模型是否能及時切換到相應的備用模式或采取安全措施,以確保列車的安全運行。通過大量的仿真實驗,對模型的性能和功能進行全面評估,發(fā)現(xiàn)潛在的問題和缺陷。專家評審也是不可或缺的環(huán)節(jié),組織軌道交通領域的專家、軟件測試專家以及車載ATP系統(tǒng)的開發(fā)人員等,對構建的模型進行嚴格評審。專家們從專業(yè)的角度出發(fā),對模型的設計合理性、功能完整性、安全性等方面進行深入分析和討論。他們依據(jù)相關的行業(yè)標準和規(guī)范,如EN50128標準對鐵路應用中軟件的安全完整性等級要求,檢查模型是否滿足這些標準和規(guī)范。專家們還會結合實際工程經(jīng)驗,對模型中可能存在的風險和隱患進行評估,提出針對性的改進建議。在評審過程中,專家們可能會發(fā)現(xiàn)模型在某些復雜場景下的邏輯設計不夠完善,或者對某些特殊情況的處理不夠合理,針對這些問題,及時進行記錄和反饋。根據(jù)仿真分析和專家評審所發(fā)現(xiàn)的問題,對模型進行針對性的優(yōu)化改進。若在仿真分析中發(fā)現(xiàn)模型在計算列車制動距離時存在誤差,通過檢查模型中的算法和參數(shù)設置,對制動距離計算模型進行優(yōu)化??赡苁怯捎谀P椭袑α熊囍苿有阅軈?shù)的取值不準確,或者算法中忽略了某些實際因素的影響,通過調(diào)整參數(shù)和完善算法,提高制動距離計算的準確性。若專家評審指出模型在應對通信故障時的處理邏輯不夠完善,增加相應的故障處理機制和冗余設計??梢栽O置備用通信鏈路,當主通信鏈路出現(xiàn)故障時,模型能夠自動切換到備用鏈路,確保列車與地面設備之間的通信不中斷。同時,優(yōu)化故障診斷和報警功能,使模型能夠更及時、準確地檢測到通信故障,并向相關人員發(fā)出警報。在優(yōu)化過程中,重新對模型進行仿真分析和驗證,確保改進后的模型能夠有效解決之前發(fā)現(xiàn)的問題,并且不會引入新的問題。不斷重復這個驗證與優(yōu)化的過程,直到模型滿足所有的設計要求和性能指標,為后續(xù)的測試用例生成和軟件測試提供堅實可靠的基礎。四、基于SCADE模型的車載ATP軟件測試用例生成4.1測試用例生成原則與策略測試用例生成應遵循覆蓋度原則,力求全面覆蓋車載ATP軟件的各項功能和各種運行場景。從功能覆蓋角度,需覆蓋速度監(jiān)控、模式轉換、停車制動等核心功能。在速度監(jiān)控功能測試中,不僅要涵蓋正常速度范圍,還應包括接近限速、超速等邊界情況;對于模式轉換功能,要覆蓋所有可能的模式轉換路徑和條件。從場景覆蓋來看,要考慮不同線路條件(如彎道、坡道、直線等)、不同運行速度(低速、中速、高速)以及各種突發(fā)情況(如信號故障、制動系統(tǒng)故障等)。通過全面的覆蓋,確保軟件在各種情況下的正確性和可靠性。有效性原則要求生成的測試用例能夠有效地發(fā)現(xiàn)軟件中的缺陷。在設計測試用例時,深入分析車載ATP軟件的功能邏輯和潛在風險點,針對可能出現(xiàn)問題的關鍵環(huán)節(jié)和邊界條件設計測試用例。對于速度監(jiān)控功能中速度閾值的判斷環(huán)節(jié),設計多個接近閾值和超過閾值的測試用例,以驗證軟件在這些關鍵情況下的響應是否正確。參考以往車載ATP軟件測試中發(fā)現(xiàn)的缺陷類型和分布情況,有針對性地設計測試用例,提高發(fā)現(xiàn)缺陷的概率??芍貜托栽瓌t是保證測試用例在不同時間、不同測試環(huán)境下能夠重復執(zhí)行并得到相同的測試結果。明確測試用例的執(zhí)行步驟、輸入數(shù)據(jù)和預期輸出,確保測試過程的確定性。對輸入數(shù)據(jù)進行精確的定義和控制,避免因數(shù)據(jù)的不確定性導致測試結果的差異。詳細記錄測試環(huán)境的配置信息,包括硬件設備、軟件版本、網(wǎng)絡環(huán)境等,使測試環(huán)境能夠在不同時間進行重現(xiàn),從而保證測試用例的可重復性。在生成策略上,基于功能分解策略,將車載ATP軟件的復雜功能分解為多個相對獨立的子功能模塊。速度監(jiān)控功能可分解為速度采集、限速比較、制動控制等子模塊;模式轉換功能可分解為模式判斷、條件檢查、轉換執(zhí)行等子模塊。針對每個子功能模塊,分別設計相應的測試用例,確保每個子功能的正確性。然后,通過組合不同子功能模塊的測試用例,形成對整個功能的全面測試。基于場景驅動策略,根據(jù)車載ATP軟件在實際運行中可能遇到的各種場景來生成測試用例。考慮正常運行場景,如列車在直線軌道上以恒定速度行駛;異常運行場景,如列車在彎道超速、通信中斷等情況。針對每種場景,詳細分析其特點和需求,設計與之對應的測試用例,以驗證軟件在不同場景下的應對能力和穩(wěn)定性。采用數(shù)據(jù)驅動策略,通過對車載ATP軟件涉及的各種數(shù)據(jù)進行分析和處理,生成不同的數(shù)據(jù)組合作為測試用例的輸入。對于速度數(shù)據(jù),考慮不同的速度值、速度變化率等;對于位置數(shù)據(jù),考慮不同的位置坐標、位置變化情況等。通過改變輸入數(shù)據(jù),觀察軟件的輸出結果,驗證軟件對不同數(shù)據(jù)的處理能力和正確性。4.2基于SCADE模型的測試用例生成方法基于狀態(tài)遷移路徑的測試用例生成方法,以SCADE模型中的狀態(tài)機為基礎,通過分析狀態(tài)機中狀態(tài)之間的遷移關系來生成測試用例。在速度監(jiān)控功能的狀態(tài)機模型中,存在“正常運行”“預警”“制動”等狀態(tài)。首先,確定狀態(tài)遷移路徑的覆蓋準則,采用全遷移覆蓋準則,即要求生成的測試用例能夠覆蓋狀態(tài)機中所有可能的狀態(tài)遷移。對于從“正常運行”到“預警”的遷移,觸發(fā)條件是列車速度達到限速閾值的90%,那么就需要設計一個測試用例,使列車速度在測試過程中達到該閾值,從而觸發(fā)這一狀態(tài)遷移;對于從“預警”到“制動”的遷移,觸發(fā)條件是列車速度超過限速閾值,相應地設計測試用例,讓列車速度超過該閾值,以覆蓋這一遷移路徑。通過深度優(yōu)先搜索(DFS,Depth-FirstSearch)或廣度優(yōu)先搜索(BFS,Breadth-FirstSearch)算法遍歷狀態(tài)機模型,生成滿足覆蓋準則的狀態(tài)遷移路徑集合。以深度優(yōu)先搜索算法為例,從初始狀態(tài)開始,沿著一條路徑盡可能深地探索下去,直到無法繼續(xù)或達到目標狀態(tài),然后回溯到上一個狀態(tài),繼續(xù)探索其他路徑,直到所有可能的路徑都被探索完。在探索過程中,記錄下經(jīng)過的狀態(tài)和遷移,形成狀態(tài)遷移路徑。在生成狀態(tài)遷移路徑后,針對每條路徑確定測試用例的輸入數(shù)據(jù)和預期輸出。對于一條包含從“正常運行”到“預警”再到“制動”狀態(tài)遷移的路徑,輸入數(shù)據(jù)應包括使列車速度從正常范圍逐漸上升,先達到限速閾值的90%,再超過限速閾值的數(shù)據(jù)。預期輸出則是在速度達到90%閾值時,系統(tǒng)應發(fā)出預警信號;在速度超過閾值時,系統(tǒng)應觸發(fā)制動動作。通過這樣的方式,將狀態(tài)遷移路徑轉化為具體的測試用例,確保對車載ATP軟件速度監(jiān)控功能的全面測試?;谶壿嫺采w的測試用例生成方法也是常用的手段之一。該方法依據(jù)不同的邏輯覆蓋準則,如語句覆蓋、判定覆蓋、條件覆蓋、修正條件判定覆蓋(MC/DC,ModifiedCondition/DecisionCoverage)等,對SCADE模型中的邏輯表達式進行分析,生成相應的測試用例。語句覆蓋要求設計的測試用例能夠使程序中的每一條語句至少被執(zhí)行一次。在車載ATP軟件的速度監(jiān)控功能中,假設有如下邏輯語句:“if(speed>limit_speed){brake();}”,為了滿足語句覆蓋,只需設計一個測試用例,使speed的值大于limit_speed,這樣就能保證“brake();”這條語句被執(zhí)行。判定覆蓋則要求測試用例能夠使程序中每個判定的取真分支和取假分支至少經(jīng)歷一次。對于上述例子,除了設計使speed大于limit_speed的測試用例(取真分支),還需要設計使speed小于或等于limit_speed的測試用例(取假分支)。條件覆蓋更細致,它要求每個判定中的每個條件的可能取值至少滿足一次。若判定語句為“if(speed>limit_speed&&distance<safe_distance){brake();}”,則需要設計測試用例,使speed大于limit_speed且distance小于safe_distance(條件都為真),以及speed小于或等于limit_speed或distance大于或等于safe_distance(條件為假)的情況都能被覆蓋。修正條件判定覆蓋是一種更為嚴格的覆蓋準則,它要求在每個判定中,每個條件都應獨立地影響判定結果。對于上述復雜判定語句,不僅要覆蓋各種條件組合,還要確保每個條件對判定結果的影響是獨立可觀察的。在實際應用中,根據(jù)車載ATP軟件的安全要求和測試目標,選擇合適的邏輯覆蓋準則,通過對SCADE模型中邏輯表達式的分析,生成滿足相應準則的測試用例,以提高測試的充分性和有效性。4.3測試數(shù)據(jù)生成與選取在基于SCADE模型的車載ATP軟件測試中,測試數(shù)據(jù)的生成與選取至關重要,它直接影響到測試的效果和軟件的質量。根據(jù)前面生成的測試用例,運用多種方法來生成合適的測試數(shù)據(jù)。邊界值分析是一種常用的方法,它著眼于輸入數(shù)據(jù)的邊界情況。在車載ATP軟件的速度監(jiān)控功能中,速度的邊界值包括限速閾值、最高允許速度、最低運行速度等。以限速閾值為例,除了生成恰好等于限速閾值的測試數(shù)據(jù),還應生成略高于和略低于限速閾值的數(shù)據(jù)。假設限速閾值為80km/h,那么可以生成79.9km/h、80km/h、80.1km/h等測試數(shù)據(jù)。通過這些邊界值數(shù)據(jù)的測試,能夠有效檢驗車載ATP軟件在速度邊界情況下的處理能力和準確性,確保軟件在接近或達到邊界條件時不會出現(xiàn)錯誤的判斷和控制。等價類劃分也是生成測試數(shù)據(jù)的有效手段。它將輸入數(shù)據(jù)劃分為若干個等價類,每個等價類中的數(shù)據(jù)對于軟件的處理來說是等價的,即如果一個等價類中的數(shù)據(jù)能通過測試,那么該等價類中的其他數(shù)據(jù)也很可能通過測試。對于車載ATP軟件的位置檢測功能,根據(jù)軌道的實際情況,可以將位置數(shù)據(jù)劃分為正常軌道區(qū)間、道岔區(qū)域、站臺區(qū)域等等價類。在正常軌道區(qū)間等價類中,選取一個具有代表性的位置數(shù)據(jù)作為測試數(shù)據(jù);在道岔區(qū)域等價類中,選擇一個位于道岔范圍內(nèi)的位置數(shù)據(jù)進行測試。通過對各個等價類的測試,能夠以較少的測試數(shù)據(jù)覆蓋較大范圍的輸入情況,提高測試效率。在實際應用中,還需要考慮測試數(shù)據(jù)的組合情況。車載ATP軟件的運行往往涉及多個輸入?yún)?shù)的相互作用,因此需要生成不同參數(shù)組合的測試數(shù)據(jù)。在測試速度監(jiān)控和模式轉換功能的協(xié)同工作時,需要同時考慮速度數(shù)據(jù)、位置數(shù)據(jù)以及列車的運行模式等參數(shù)的組合??梢栽O計一系列測試數(shù)據(jù)組合,如在不同的速度下,列車處于不同的位置,同時處于不同的運行模式,觀察車載ATP軟件在這些復雜組合情況下的運行狀態(tài)和功能實現(xiàn)情況。例如,設計測試數(shù)據(jù)組合:列車速度為70km/h,位于某彎道位置,運行模式為部分監(jiān)控模式;列車速度為90km/h,位于站臺區(qū)域,運行模式為完全監(jiān)控模式等。通過這些多樣化的測試數(shù)據(jù)組合,能夠更全面地檢驗車載ATP軟件在實際運行中的各種場景下的性能和可靠性。在選取測試數(shù)據(jù)時,還應參考實際的列車運行數(shù)據(jù)和歷史故障數(shù)據(jù)。實際列車運行數(shù)據(jù)能夠反映列車在真實運行環(huán)境中的各種情況,包括不同線路條件、不同運行時段的速度、位置等數(shù)據(jù)。通過分析這些實際數(shù)據(jù),選取具有代表性的數(shù)據(jù)作為測試數(shù)據(jù),能夠使測試更貼近實際運行情況,提高測試的有效性。歷史故障數(shù)據(jù)則可以幫助確定一些可能導致軟件故障的特殊數(shù)據(jù)情況,針對這些特殊數(shù)據(jù)生成測試數(shù)據(jù),有助于發(fā)現(xiàn)軟件中潛在的缺陷和問題。例如,根據(jù)歷史故障數(shù)據(jù)發(fā)現(xiàn),當列車在某特定彎道以較高速度運行且同時出現(xiàn)通信短暫中斷時,車載ATP軟件曾出現(xiàn)過誤判情況。那么在選取測試數(shù)據(jù)時,就可以針對性地設計這樣的測試數(shù)據(jù)組合,對軟件在這種復雜情況下的表現(xiàn)進行重點測試。4.4測試用例示例與分析以車載ATP軟件的速度監(jiān)控功能為例,展示基于SCADE模型生成的測試用例。根據(jù)基于狀態(tài)遷移路徑的測試用例生成方法,針對速度監(jiān)控功能狀態(tài)機模型中“正常運行”“預警”“制動”三個狀態(tài)之間的遷移,設計如下測試用例。測試用例ID測試目的輸入數(shù)據(jù)預期輸出實際輸出是否通過TC-SM-001驗證速度正常時系統(tǒng)狀態(tài)列車速度50km/h,限速80km/h系統(tǒng)處于“正常運行”狀態(tài),無警報,無制動動作系統(tǒng)處于“正常運行”狀態(tài),無警報,無制動動作是TC-SM-002驗證速度接近限速時系統(tǒng)狀態(tài)列車速度72km/h(限速80km/h的90%)系統(tǒng)發(fā)出預警信號,進入“預警”狀態(tài),無制動動作系統(tǒng)發(fā)出預警信號,進入“預警”狀態(tài),無制動動作是TC-SM-003驗證速度超速時系統(tǒng)狀態(tài)列車速度85km/h,限速80km/h系統(tǒng)觸發(fā)制動動作,進入“制動”狀態(tài),列車減速系統(tǒng)觸發(fā)制動動作,進入“制動”狀態(tài),列車減速是在這個示例中,TC-SM-001覆蓋了速度監(jiān)控功能中列車正常運行的場景,確保在正常速度范圍內(nèi),車載ATP軟件的狀態(tài)和行為正確。TC-SM-002針對速度接近限速閾值的邊界情況進行測試,驗證系統(tǒng)能否準確檢測到接近限速的狀態(tài)并發(fā)出預警。TC-SM-003則測試速度超過限速的情況,檢查系統(tǒng)是否能及時觸發(fā)制動,保障列車運行安全。通過這三個測試用例,覆蓋了速度監(jiān)控功能狀態(tài)機模型中主要的狀態(tài)遷移路徑,能夠有效驗證速度監(jiān)控功能在不同速度條件下的正確性。再以基于邏輯覆蓋的測試用例生成方法為例,假設速度監(jiān)控功能中有如下邏輯表達式:“if(speed>limit_speed&&distance<safe_distance){brake();}”。根據(jù)判定覆蓋準則,設計如下測試用例:測試用例ID測試目的輸入數(shù)據(jù)預期輸出實際輸出是否通過TC-LC-001驗證判定取真分支speed=85km/h,limit_speed=80km/h,distance=50m,safe_distance=100m系統(tǒng)觸發(fā)制動動作系統(tǒng)觸發(fā)制動動作是TC-LC-002驗證判定取假分支speed=75km/h,limit_speed=80km/h,distance=150m,safe_distance=100m系統(tǒng)不觸發(fā)制動動作系統(tǒng)不觸發(fā)制動動作是TC-LC-001使邏輯表達式中的條件都為真,覆蓋了判定的取真分支,驗證當列車速度超過限速且距離小于安全距離時,系統(tǒng)能夠正確觸發(fā)制動動作。TC-LC-002則使條件為假,覆蓋了判定的取假分支,檢驗當不滿足制動條件時,系統(tǒng)不會誤觸發(fā)制動。這兩個測試用例基于判定覆蓋準則,對速度監(jiān)控功能中的關鍵邏輯表達式進行了測試,能夠有效發(fā)現(xiàn)因邏輯判斷錯誤導致的軟件缺陷。通過對這些測試用例的分析可知,基于SCADE模型生成的測試用例能夠全面覆蓋車載ATP軟件的功能和各種邊界情況?;跔顟B(tài)遷移路徑的測試用例從系統(tǒng)狀態(tài)轉換的角度,驗證軟件在不同運行狀態(tài)下的行為正確性;基于邏輯覆蓋的測試用例則深入到軟件的邏輯表達式層面,確保邏輯判斷的準確性。這些測試用例相互補充,提高了測試的全面性和有效性,能夠更有效地發(fā)現(xiàn)車載ATP軟件中的潛在缺陷,為軟件的安全性和可靠性提供有力保障。五、基于SCADE模型的車載ATP軟件測試執(zhí)行與評估5.1測試環(huán)境搭建基于SCADE模型的車載ATP軟件測試環(huán)境搭建是軟件測試過程中的重要環(huán)節(jié),它為測試用例的執(zhí)行提供了必要的硬件、軟件和工具支持,確保測試工作能夠順利進行,并獲得準確可靠的測試結果。在硬件方面,測試環(huán)境需要模擬實際的車載運行環(huán)境,以保證測試的真實性和有效性。計算機是測試環(huán)境的核心硬件設備,其性能直接影響測試的效率和準確性。應選用高性能的工業(yè)控制計算機,其具備強大的計算能力和穩(wěn)定的運行性能,能夠滿足運行SCADE軟件以及模擬復雜車載系統(tǒng)的需求。該計算機需要配備高速處理器,以確保在處理大量測試數(shù)據(jù)和運行復雜模型時能夠快速響應,不會出現(xiàn)卡頓或延遲現(xiàn)象。例如,選擇英特爾酷睿i7系列以上的處理器,其多核心、高主頻的特點能夠有效提升計算速度,滿足車載ATP軟件測試中對數(shù)據(jù)處理速度的要求。大容量內(nèi)存也是必不可少的,至少配備16GB以上的內(nèi)存,以保證在運行SCADE軟件和模擬車載系統(tǒng)時,能夠同時加載和處理大量的程序和數(shù)據(jù),避免因內(nèi)存不足導致測試中斷或出現(xiàn)錯誤。此外,還需要具備高速的存儲設備,如固態(tài)硬盤(SSD),以加快數(shù)據(jù)的讀寫速度,減少測試等待時間,提高測試效率。接口設備用于實現(xiàn)計算機與車載ATP硬件設備之間的通信和數(shù)據(jù)交互。由于車載ATP系統(tǒng)涉及多種類型的數(shù)據(jù)傳輸,因此需要多種接口設備來滿足不同的通信需求。RS-485接口常用于與車載ATP系統(tǒng)中的一些傳感器和執(zhí)行器進行通信,它具有傳輸距離遠、抗干擾能力強的特點,能夠保證在復雜的車載電磁環(huán)境下穩(wěn)定地傳輸數(shù)據(jù)。在與速度傳感器、位置傳感器等設備通信時,RS-485接口能夠準確地將傳感器采集到的數(shù)據(jù)傳輸?shù)接嬎銠C中,供測試軟件進行分析和處理。CAN(ControllerAreaNetwork)接口也是常用的接口之一,它在車載網(wǎng)絡中應用廣泛,具有高速、可靠的數(shù)據(jù)傳輸特性,適用于與車載ATP系統(tǒng)中的其他控制單元進行通信。例如,通過CAN接口可以與列車的制動控制單元、牽引控制單元等進行數(shù)據(jù)交互,實現(xiàn)對列車運行狀態(tài)的全面監(jiān)控和測試。以太網(wǎng)接口則用于實現(xiàn)計算機與其他網(wǎng)絡設備或測試工具之間的通信,方便數(shù)據(jù)的共享和遠程控制。在進行分布式測試時,通過以太網(wǎng)接口可以將不同測試節(jié)點的數(shù)據(jù)集中傳輸?shù)街鳒y試計算機上,進行統(tǒng)一的分析和處理。模擬信號發(fā)生器用于生成各種模擬信號,模擬列車運行過程中的實際信號輸入,如速度信號、位置信號等。對于速度信號的模擬,模擬信號發(fā)生器可以根據(jù)測試需求生成不同頻率和幅值的信號,以模擬列車在不同速度下的運行狀態(tài)。當測試車載ATP軟件在高速運行時的速度監(jiān)控功能時,模擬信號發(fā)生器可以生成高頻、幅值較大的速度信號,模擬列車高速行駛的情況;而在測試低速運行狀態(tài)時,則可以生成低頻、幅值較小的信號。位置信號的模擬則需要模擬信號發(fā)生器能夠根據(jù)軌道的實際布局和列車的運行邏輯,生成相應的位置編碼信號,以模擬列車在不同位置的情況。在模擬列車經(jīng)過應答器時,模擬信號發(fā)生器需要生成與應答器編碼相對應的信號,使車載ATP軟件能夠正確識別列車的位置。信號采集卡用于采集車載ATP硬件設備輸出的信號,以便對其進行分析和評估。它需要具備高精度的模數(shù)轉換能力,能夠準確地將模擬信號轉換為數(shù)字信號,供計算機進行處理。在采集車載ATP硬件設備輸出的速度信號、制動信號等模擬信號時,信號采集卡的高精度模數(shù)轉換功能能夠保證采集到的數(shù)據(jù)準確可靠,為后續(xù)的測試結果分析提供有力支持。信號采集卡還需要具備高速的數(shù)據(jù)傳輸能力,能夠快速地將采集到的數(shù)據(jù)傳輸?shù)接嬎銠C中,避免數(shù)據(jù)丟失或延遲。在車載ATP軟件的實時測試中,信號采集卡需要能夠在短時間內(nèi)采集大量的信號數(shù)據(jù),并及時傳輸給計算機進行分析處理,以確保測試的實時性和準確性。在軟件方面,SCADE軟件是整個測試環(huán)境的核心軟件工具。它不僅用于車載ATP軟件的建模和測試用例生成,還在測試執(zhí)行過程中發(fā)揮著重要作用。SCADESuite是SCADE軟件的主要套件,它包含了多個功能模塊,如SCADEDesign用于系統(tǒng)建模,SCADESimulate用于模型仿真和測試執(zhí)行。在測試執(zhí)行階段,通過SCADESimulate模塊,可以加載之前建立的車載ATP軟件模型和生成的測試用例,對車載ATP軟件進行仿真測試。在仿真過程中,SCADESimulate模塊能夠實時監(jiān)控模型的運行狀態(tài),記錄各種變量的值和事件的發(fā)生情況,為后續(xù)的測試結果分析提供詳細的數(shù)據(jù)支持。操作系統(tǒng)是計算機運行的基礎軟件平臺,選擇合適的操作系統(tǒng)對于測試環(huán)境的穩(wěn)定性和性能至關重要。由于車載ATP軟件通常運行在實時操作系統(tǒng)環(huán)境下,因此在測試環(huán)境中也應選擇實時操作系統(tǒng),以保證測試的準確性和可靠性。VxWorks是一款廣泛應用于嵌入式實時系統(tǒng)開發(fā)和測試的操作系統(tǒng),它具有實時性強、可靠性高、可裁剪性好等特點,非常適合作為車載ATP軟件測試環(huán)境的操作系統(tǒng)。在VxWorks操作系統(tǒng)上,可以方便地安裝和運行SCADE軟件以及其他測試工具,并且能夠與硬件設備進行良好的交互,確保測試環(huán)境的穩(wěn)定運行。測試管理工具用于對測試過程進行全面的管理,包括測試計劃的制定、測試用例的管理、測試執(zhí)行的跟蹤和測試結果的記錄等。TestLink是一款開源的測試管理工具,它提供了豐富的功能,能夠滿足車載ATP軟件測試管理的需求。通過TestLink,可以創(chuàng)建詳細的測試計劃,明確測試的目標、范圍、時間安排等;對測試用例進行分類、組織和版本管理,方便測試人員查找和執(zhí)行測試用例。在測試執(zhí)行過程中,TestLink能夠實時跟蹤測試用例的執(zhí)行狀態(tài),記錄測試結果和發(fā)現(xiàn)的問題,生成測試報告,為測試過程的監(jiān)控和評估提供依據(jù)。通信協(xié)議棧軟件用于實現(xiàn)計算機與車載ATP硬件設備之間的通信協(xié)議解析和數(shù)據(jù)傳輸。由于車載ATP系統(tǒng)采用特定的通信協(xié)議,如TCN(TrainCommunicationNetwork)協(xié)議等,因此需要相應的通信協(xié)議棧軟件來實現(xiàn)與硬件設備的通信。通信協(xié)議棧軟件能夠將計算機發(fā)送的數(shù)據(jù)按照特定的通信協(xié)議進行封裝,然后發(fā)送給車載ATP硬件設備;同時,它也能夠接收車載ATP硬件設備發(fā)送的數(shù)據(jù),并按照通信協(xié)議進行解析,將解析后的數(shù)據(jù)提供給測試軟件進行處理。在使用TCN協(xié)議進行通信時,通信協(xié)議棧軟件能夠準確地實現(xiàn)數(shù)據(jù)的幀格式轉換、地址解析、數(shù)據(jù)校驗等功能,確保數(shù)據(jù)在計算機和車載ATP硬件設備之間的可靠傳輸。5.2測試執(zhí)行過程在完成測試環(huán)境的搭建后,便進入到關鍵的測試執(zhí)行階段。測試執(zhí)行過程嚴格按照預先制定的測試計劃和生成的測試用例有條不紊地進行,以確保對車載ATP軟件的全面、有效測試。首先,從測試用例庫中按照一定的順序選取測試用例。為了保證測試的全面性和有效性,通常會采用特定的選取策略,如按照功能模塊分類選取,先對速度監(jiān)控功能的測試用例進行執(zhí)行,再依次執(zhí)行模式轉換、停車制動等功能的測試用例;或者按照測試用例的優(yōu)先級選取,先執(zhí)行高優(yōu)先級的測試用例,確保軟件的關鍵功能和核心業(yè)務邏輯得到優(yōu)先測試。在選取速度監(jiān)控功能的測試用例時,按照之前生成的基于狀態(tài)遷移路徑和邏輯覆蓋的測試用例,依次選擇包含不同速度值、速度變化情況以及各種邊界條件的測試用例,如正常速度運行、接近限速、超速等情況的測試用例。將選取的測試用例輸入到測試環(huán)境中,通過測試工具(如SCADESimulate模塊)加載測試用例,并設置相應的測試參數(shù)。對于速度監(jiān)控功能的測試用例,需要設置列車的初始速度、限速值、速度變化率等參數(shù)。在執(zhí)行“驗證速度接近限速時系統(tǒng)狀態(tài)”的測試用例時,將列車初始速度設置為接近限速閾值的90%,如限速為80km/h時,將初始速度設置為72km/h,同時設置速度變化率為一個較小的值,以模擬列車緩慢接近限速的過程。啟動測試執(zhí)行,測試工具會根據(jù)測試用例的要求,向車載ATP軟件發(fā)送相應的輸入信號,并模擬列車的運行場景。在速度監(jiān)控功能測試中,模擬信號發(fā)生器會根據(jù)設置的速度參數(shù),生成相應的速度信號,通過接口設備傳輸給車載ATP軟件。SCADESimulate模塊會實時監(jiān)控車載ATP軟件的運行狀態(tài),記錄軟件的輸出結果和內(nèi)部變量的值。在模擬列車速度接近限速的過程中,觀察車載ATP軟件是否能準確檢測到速度接近限速的狀態(tài),并按照預期發(fā)出預警信號,同時記錄軟件發(fā)出預警信號的時間、相關內(nèi)部變量(如速度比較結果、預警標志位等)的值。在測試執(zhí)行過程中,密切觀察測試環(huán)境中各個設備和軟件的運行情況,確保測試的正常進行。若發(fā)現(xiàn)異常情況,如測試工具報錯、車載ATP軟件出現(xiàn)死機或異常退出等,立即停止測試,并對異常情況進行詳細記錄。記錄異常發(fā)生的時間、測試用例的執(zhí)行進度、異常的具體表現(xiàn)等信息,以便后續(xù)進行故障排查和分析。如果在測試過程中發(fā)現(xiàn)車載ATP軟件在處理某個速度值時出現(xiàn)死機現(xiàn)象,需要記錄死機發(fā)生時的速度值、軟件的運行狀態(tài)、測試環(huán)境的相關參數(shù)等,為后續(xù)分析死機原因提供依據(jù)。按照測試用例的要求,逐步完成所有測試用例的執(zhí)行。在執(zhí)行過程中,嚴格控制測試條件和環(huán)境的一致性,確保每個測試用例的執(zhí)行結果具有可比性。對于每個測試用例,都要重復上述的輸入測試用例、設置參數(shù)、啟動測試執(zhí)行、觀察運行情況和記錄結果的步驟。在執(zhí)行模式轉換功能的測試用例時,按照不同的模式轉換條件和路徑,設置相應的列車位置、速度、運行模式等參數(shù),啟動測試后觀察車載ATP軟件是否能正確地進行模式轉換,并記錄轉換過程中的相關信息。在完成所有測試用例的執(zhí)行后,對測試過程中記錄的數(shù)據(jù)和結果進行整理和初步分析。檢查測試結果是否與預期輸出一致,統(tǒng)計測試用例的通過情況,計算測試覆蓋率等指標。根據(jù)整理和分析的結果,初步判斷車載ATP軟件是否存在缺陷和問題。如果發(fā)現(xiàn)某個功能模塊的測試用例通過率較低,或者某些關鍵指標(如速度監(jiān)控的準確性、模式轉換的及時性等)不滿足要求,需要進一步深入分析原因,為后續(xù)的測試結果評估和軟件改進提供方向。5.3測試結果分析與評估在完成基于SCADE模型的車載ATP軟件測試執(zhí)行后,對測試結果進行深入、全面的分析與評估是至關重要的環(huán)節(jié),這直接關系到對車載ATP軟件質量和可靠性的準確判斷。測試用例覆蓋度是評估測試全面性的關鍵指標,它反映了測試用例對車載ATP軟件各項功能和代碼的覆蓋程度。通過SCADE軟件自帶的測試覆蓋度分析工具,對測試用例的覆蓋情況進行詳細統(tǒng)計和分析。語句覆蓋度用于衡量測試用例對軟件源代碼中每條語句的執(zhí)行覆蓋情況。假設車載ATP軟件的速度監(jiān)控功能模塊中包含100條語句,在本次測試中,有85條語句被執(zhí)行到,則語句覆蓋度為85%。雖然較高的語句覆蓋度能夠在一定程度上保證軟件的基本功能得到測試,但它并不能完全確保軟件的正確性,因為即使每條語句都被執(zhí)行過,也可能存在邏輯錯誤未被發(fā)現(xiàn)。判定覆蓋度則關注測試用例對軟件中判定條件的覆蓋情況,即每個判定條件的取真和取假分支是否都被執(zhí)行到。在速度監(jiān)控功能中,存在判定條件“if(speed>limit_speed){brake();}”,若測試用例既包含使speed大于limit_speed(取真分支)的情況,又包含使speed小于或等于limit_speed(取假分支)的情況,則該判定條件的判定覆蓋度為100%。判定覆蓋度比語句覆蓋度更能深入地檢查軟件的邏輯正確性,但它也存在局限性,可能會遺漏一些復雜的條件組合情況。修正條件判定覆蓋(MC/DC)是一種更為嚴格的覆蓋準則,它要求在每個判定中,每個條件都應獨立地影響判定結果。對于復雜的判定條件“if(speed>limit_speed&&distance<safe_distance){brake();}”,要滿足MC/DC覆蓋度,不僅需要覆蓋各種條件組合,還需要確保每個條件對判定結果的影響是獨立可觀察的。例如,通過設計多個測試用例,使得當speed變化而distance不變時,判定結果會因speed的變化而改變;當distance變化而speed不變時,判定結果會因distance的變化而改變,以此來驗證每個條件對判定結果的獨立影響。在本次測試中,對車載ATP軟件關鍵功能模塊的MC/DC覆蓋度進行統(tǒng)計,結果顯示大部分關鍵判定條件的MC/DC覆蓋度達到了90%以上,表明測試用例在檢查軟件復雜邏輯方面具有較高的有效性。通過對測試結果中軟件輸出與預期輸出的細致比對,能夠準確驗證車載ATP軟件的功能正確性。在速度監(jiān)控功能測試中,根據(jù)測試用例的設計,當列車速度超過限速閾值時,車載ATP軟件應立即觸發(fā)制動動作,并將列車速度降低到安全范圍內(nèi)。在實際測試中,對多個超速測試
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025漣水縣事業(yè)單位招聘人員40人模擬試卷及答案詳解(有一套)
- 大學課件園教學課件
- 邯鄲市人民醫(yī)院呼吸科呼吸治療儀器維護與質控考核
- 2025湖北恩施州巴東縣畜牧獸醫(yī)服務中心招聘公益性崗位人員2人考前自測高頻考點模擬試題及答案詳解(新)
- 滄州市中醫(yī)院疑難編碼案例考核
- 2025黑龍江綏化市青岡縣人民政府辦公室選調(diào)5名模擬試卷及答案詳解1套
- 衡水市人民醫(yī)院兒科年度綜合能力評估
- 2025呼倫貝爾莫旗消防救援大隊招聘消防文員考前自測高頻考點模擬試題及答案詳解(奪冠)
- 2025兒童醫(yī)院職業(yè)病與工作相關疾病的預防指導考核
- 大學電勢課件
- 2025年浙江省檔案職稱考試(檔案高級管理實務與案例分析)綜合能力測試題及答案
- 金華蘭溪市衛(wèi)生健康局所屬事業(yè)單位招聘筆試真題2024
- 學習《水利水電工程生產(chǎn)安全重大事故隱患判定導則-SLT 842》課件
- 1.3 逐層分類細化分類結果【知識精研】二年級上冊數(shù)學(人教版2024)
- 國務院便民服務管理辦法
- 甘肅省醫(yī)療建設管理辦法
- 胸痛的護理教學課件
- 《中國高血壓防治指南(2024年修訂版)》解讀課件
- 2025年輔警招聘考試題庫(+答案解析)
- DIEP乳房重建術后的護理指南
- 中信財務管理制度
評論
0/150
提交評論