Under regressionstester testas ofta ett modifierat system på nytt med hjälp av en befintlig testsvit. Eftersom testsvitens storlek kan vara mycket stor, är testare intresserade av att upptäcka fel i det modifierade systemet så tidigt som möjligt under denna omtestningsprocess. Testa prioritering försök att beställa tester för utförande så att chanserna för tidig upptäckt av fel under omtestning ökar. De befintliga prioriteringsmetoderna är baserade på källkoden för det system som testas. I detta dokument presenterar och utvärderar vi två modellbaserade selektiva metoder och en beroendebaserad metod för testprioritering med hjälp av den statsbaserade modellen av det system som testas. Dessa metoder förutsätter att ändringarna görs både på det system som provas och dess modell. Den befintliga testsviten utförs på systemmodellen och information om denna körning används för att prioritera tester. Utförandet av modellen är billigt jämfört med genomförandet av det system som är under provning; därför är overhead i samband med testprioritering relativt liten. Dessutom presenterar vi en analytisk ram för utvärdering av testprioriteringsmetoder. Denna ram kan minska kostnaderna för utvärdering jämfört med den ram som bygger på observation. Vi har genomfört en empirisk studie där vi jämförde olika testprioriteringsmetoder. Resultaten av den empiriska studien tyder på att systemmodeller kan förbättra effektiviteten av testprioritering med avseende på tidig feldetektering. L. TAHAT ET AL. Vara mycket dyr. Testprioriteringsorder tester från den befintliga testsviten, för "utförande" på ett sådant sätt att fel i det modifierade systemet upptäcks tidigt under omtestningsprocessen. Testprioriteringsmetoder [14-21] ordningstester enligt vissa kriterier, t.ex. En kodtäckning uppnås snabbast. Tester utförs sedan i denna prioritetsordning: test med högre prioritet, baserat på prioriteringskriteriet, utförs först, medan tester med lägre prioritet utförs senare. De befintliga testprioriteringsmetoderna använder källkoden och den information som samlats in under tidigare utföranden av systemet för att prioritera testsviten för omtestning av systemet. Observera att testprioritering är lämplig för programvarusystem för vilka genomförandet av en testsvit är dyrt när det gäller tid och resurser. För system för vilka genomförandet av en testsvit är mycket snabbt, kan testprioritering ha begränsade fördelar. Systemmodeller används ofta vid utveckling av ett programvarusystem, t.ex. Vid partiell kodgenerering och vid testgenerering för modellbaserad provning. Flera modelleringspråk har utvecklats för att modellera statsbaserade programvarusystem, t.ex. Statliga diagram [22], Extended Finite State Machines (EFSM) [23] och Specifikation Description Language (SDL) [24]. Under de senaste åren har flera modellbaserade testgenerationer [23, 25-29] och testsvitsreduktionsmetoder [9, 13] utvecklats utifrån dessa modellspråk. I detta dokument presenterar vi en modellbaserad testprioriteringsmetod. Vår strategi prioriterar tester med hjälp av information från de ursprungliga och modifierade systemmodellerna tillsammans med information som samlats in under genomförandet av den modifierade modellen på en befintlig testsvit. Baserat på detta tillvägagångssätt presenterar vi två modellbaserade testprioriteringsmetoder: modellbaserad selektiv testprioritering och modellberoendebaserad testprioritering. Vi har genomfört en empirisk studie där vi jämförde effektiviteten av de framlagda testprioriteringsmetoderna. Dessutom presenterar vi en analytisk ram för utvärdering av vissa testprioriteringsmetoder med avseende på effektiviteten av tidig feldetektering. Återstoden av denna rapport är organiserad enligt följande: Avsnitt 2 ger en översikt över EFSM-baserade systemmodeller. Avsnitt 3 ger preliminärerna om problemet med testprioritering och presenterar modellbaserad testprioritering. I avsnitt 4 presenteras den föreslagna modellbaserade selektiva testprioriteringsmetoden. I avsnitt 5 presenteras den föreslagna metoden för beroendebaserad testningsprioritering. I avsnitt 6 diskuteras ett ramverk för jämförelse av testprioriteringsmetoder. I avsnitt 7 presenteras resultaten av en empirisk studie. I avsnitt 8 beskrivs arbetet med att prioritera testerna. I avsnitt 9 diskuteras slutsatser och framtida forskningsinriktningar. Systemmodeller för statsbaserade system beskriver systemets beteende genom en uppsättning stater och övergångar mellan dessa stater. De mest populära formella beskrivningsmetoder (språk) som används för modellering av statsbaserade system är: Extended Finite State Machines (EFSMs), Specifikation Description Language (SDL) och State Charts. Dessa språk är ofta grafiska, vilket gör dem lätta att förstå och använda. De har fått brett erkännande från industrin, särskilt inom områdena telekommunikation, inbyggda system och datornätverk, där statliga system är vanliga. I detta dokument koncentrerar vi oss på systemmodeller som ges som EFSM:s; den underliggande modellen för andra modelleringspråk för statsbaserade system som SDL. En EFSM består av en uppsättning stater (inklusive en startstat och en utträdesstat) och övergångar mellan stater. En övergång utlöses vid sitt ursprungstillstånd när en händelse inträffar (dvs. En inmatning tas emot) och ett möjliggörande villkor (dvs. ett booleskt uttryck) i samband med övergången är tillfredsställt. När övergången utlöses kan en sekvens av åtgärder utföras (som kan manipulera variabler och producera en utgång) och systemet överförs till övergångens avslutande tillstånd. En EFSM M uttrycks formellt som en 7 tuple: M = (, Q, Start, Exit, V, O, R), där är uppsättningen av händelser, Q är uppsättningen av tillstånd, Start Q är starttillståndet, Avsluta Q är utgångstillståndet, V är en ändlig uppsättning variabler, O är uppsättningen åtgärder, R är uppsättningen av övergångar, där varje övergång
Den befintliga testsviten utförs på systemmodellen och information om denna körning används för att prioritera tester REF.
Regression test suite prioritization using system models
{'venue': 'Softw. Test. Verification Reliab.', 'journal': 'Softw. Test. Verification Reliab.', 'mag_field_of_study': ['Computer Science']}