Regressionstestning är en dyr underhållsprocess som används för att förnya modifierad programvara. Metoder för att välja regressionstest (RTS) försöker sänka kostnaden för regressionstest genom att välja och köra en delmängd av de befintliga testfallen. Många sådana tekniker har föreslagits och inledande studier visar att de kan ge besparingar. Vi tror dock att frågor som den frekvens med vilken testning görs har en stark inverkan på beteendet hos dessa tekniker. Därför utförde vi ett experiment för att bedöma effekterna av testappliceringsfrekvensen på kostnaderna och fördelarna med regressionstestvalstekniker. Våra resultat avslöjar viktiga kompromisser som bör beaktas vid användning av dessa tekniker över en rad programversioner. Nyckelord regressionstestning, applikationsfrekvens, empirisk studie Efter att ha modifierat programvara vill utvecklare vanligtvis veta att omodifierad kod inte har påverkats negativt. När en sådan omodifierad kod påverkas negativt, säger vi att ett regressionsfel har inträffat. Utvecklare gör ofta regressionstestning för att söka efter sådana regressionsfel. Den enklaste regressionstestningsstrategin är att köra om alla befintliga testfall. Denna metod är enkel att genomföra, men kan vara onödigt dyr, särskilt när förändringar bara påverkar en liten del av systemet. Följaktligen har en alternativ metod för regressionstest (RTS) föreslagits [t.ex. 1,2,5,6,10,14]. Med detta tillvägagångssätt väljs endast en delmängd av testfallen och körs om. Eftersom det i allmänhet är omöjligt att välja ett optimalt testval (dvs. att välja ut exakt felavvisande testfall) är kostnads-nyttofördelarna med RTS-teknik en central fråga för regressionstestning av forskning och praxis. Tillstånd att göra digitala eller hårda kopior av hela eller delar av detta arbete för personligt bruk eller klassrum beviljas utan avgift under förutsättning att kopior är!lot görs eller distribueras för vinst eller comimercial fördel och att kopior bär detta meddelande och den fullständiga citering på första sidan. För att kopiera annars. Att återpublicera, att posta på seiiws eller att rcdistribuera till listor kräver tidigare specifik pemdssion och en avgift. Copyright ACM 2000 1-581 13-206-9/00/6... $5,00 Ett vanligt sätt att studera detta problem har varit att hitta eller skapa bas och modifierade versioner av ett system och tillhörande testsviter. Därefter körs en testvalsalgoritm och storleken och effektiviteten hos den valda testsviten jämförs med storleken och effektiviteten hos den ursprungliga testsviten [t.ex. 4,11,16,17]. En begränsning av detta tillvägagångssätt är att det modellerar regressionstestning som en engångsaktivitet snarare än som den kontinuerliga process det är. Exempelvis kräver programutgåvor ofta många ändringar i ett system med regressionstest mellan olika ändringar (snarare än ett regressionstest i slutet av en utgåva). I praktiken integrerar många företag förändringar och sedan regressionstest varje månad, varje vecka eller till och med dagligen. Vår hypotes är att den förändring som gjorts mellan regressionstester i hög grad påverkar kostnaderna och fördelarna med olika metoder för att välja regressionstester. Det vill säga, vi tror att vissa test urvalstekniker kommer att prestera mindre kostnadseffektivt när mängden ändringar som görs mellan regressionstestningssessioner ökar. Detta beror på att de kommer att välja allt större testsviter och eftersom dessa sviter kommer att bli allt mindre kostnadseffektiva när det gäller att hitta fel. Om denna hypotes är sann, testa utövare kan bättre hantera och samordna sina integrations- och regressionstestningsprocesser, vilket sparar tid och pengar. Därför har vi utformat och genomfört ett experiment för att undersöka denna hypotes. I resten av denna uppsats går vi igenom relevant litteratur, beskriver våra forskningshypoteser, presenterar utformningen och analysen av vårt experiment och diskuterar våra slutsatser och framtida forskningsinriktningar. BAKGRUND OCH LITERATUR REVIEW Låt P vara ett förfarande eller program, låt P' vara en modifierad version av P och låt T vara en testsvit för P.
Effekterna av denna faktor på kostnaderna för urval av regressionstest har studerats i REF.
An empirical study of regression test application frequency
{'venue': 'Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium', 'journal': 'Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium', 'mag_field_of_study': ['Computer Science']}