Software testing plays a vital role in the software development life cycle. Having a more accurate and cost-efficient testing process is still demanded in the industry. Thus, test optimization becomes an important topic in both state of the art and state of the practice. Software testing today can be performed manually, automatically or semi-automatically. A manual test procedure is still popular for testing for instance in safety critical systems. For testing a software product manually, we need to create a set of manual test case specifications. The number of required test cases for testing a product is dependent on the product size, complexity, the company policies, etc. Moreover, generating and executing test cases manually is a time and resource consuming process. Therefore, ranking the test cases for execution can help us reduce the testing cost and also release the product faster to the market. In order to rank test cases for execution, we need to distinguish test cases from each other. In other words, the properties of each test case should be detected in advance. Requirement coverage is detected as a critical criterion for test cases optimization. In this thesis we propose an approach based on a $p$-Laplacian Spectral Clustering for detecting the traceability matrix between manual test cases and the requirements, in order to find the requirement coverage for the test cases. However, the feasibility of the proposed approach is studied by an empirical evaluation which has been performed on a railway use-case at Bombardier Transportation in Sweden. Through the experiments performed using our proposed method it was able to achieve an $F_1$-score up to $4.4\%$. Although the proposed approach under-performed for this specific problem compared to previous studies, it was possible to get some insights on what limitations $p$-Laplacian Spectral Clustering have and how it could potentially be modified for similar kind of problems. / Mjukvarutestning har en viktig roll inom mjukvaruutveckling. Att ha en mer exakt och kostnadseffektiv testprocess är efterfrågad i industrin. Därför är testoptimering ett viktigt ämne inom forskning och i praktiken. Idag kan mjukvarutestning utföras manuellt, automatiskt eller halvautomatiskt. En manuell testprocess är fortfarande populär för att testa säkerhetskritiska system. För att testa en programvara manuellt så måste vi skapa en uppsättning specifikationer för testfall. Antalet testfall som behövs kan bero på bland annat produktens storlek, komplexitet, företagspolicys etc. Att generera och utföra testfall manuellt är ofta en tids- och resurskrävande process. För att minska testkostnader och för att potentiellt sett kunna släppa produkten till marknaden snabbare kan det därför vara av intresse att rangordna vilka test fall som borde utföras. För att göra rangordningen så måste testfallens särskiljas på något vis. Med andra ord så måste varje testfalls egenskaper upptäckas i förväg. En viktig egenskap att urskilja från testfallen är hur många krav testfallet omfattar. I det här projektet tar vi fram en metod baserad på $p$-Laplacian spektralklustring för att hitta en spårbarhetsmatris mellan manuella testfall och krav för att ta reda på vilka krav som omfattas av alla testfall. För att evaluera metodens lämplighet så jämförs den mot en tidigare empirisk studie av samma problem som gjordes på ett järnvägsbruk hos Bombardier Transportation i Sverige. Från de experiment som utfördes med vår framtagna metod så kunde ett $F_1$-Score på $4.4\%$ uppnås. Även om den metod som togs fram i detta projekt underpresterade för det här specifika problemet så kunde insikter om vilka begränsningar $p$-Laplacian spektralklustring har och hur de potentiellt sett kan behandlas för liknande problem.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-260255 |
Date | January 2019 |
Creators | Ghafoory, Jones |
Publisher | KTH, Numerisk analys, NA |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-SCI-GRU ; 2019:358 |
Page generated in 0.0017 seconds