{"title":"Test Cases Prioritization Framework for Component Based Front End Technologies","authors":"Hiba Ghannam, Abdel Salam Sayyad","doi":"10.1109/PICICT53635.2021.00040","DOIUrl":null,"url":null,"abstract":"Test cases prioritization is an important action that has to be done during the testing phase within the software development life cycle. It helps to add more focus on test cases that have high priority. In addition, it helps to discover defects in early stages. Recently, Component-based architecture frontend frameworks are the most popular used technologies; hence prioritization could be connected with it. It might be connected with components reusability and their business requirements. In previous research, several solutions were proposed for test cases prioritization. The gap here, that most of these solutions were built for regression testing. Few proposed solutions were generated for new test cases, while these solutions didn't consider the new frontend technologies. This research presented a framework as an automated solution for prioritization of new test cases. Test cases represent a web application that is going to be developed using the mentioned technologies. The prioritization problem in this research was considered as a multi objective optimization problem where trade-off has to be done between different objectives. Therefore, the proposed solution considered four genetic algorithms: NSGA-II, IBEA, MOCell and SPEA2. During this research, five datasets were created since there are no available datasets. First one was created manually, while the others were created using a random approach. This proposed random approach for creating datasets, can help researchers to create any dataset with any required size for testing any similar problem. Several experiments were done during this research and using the five datasets. Results for all datasets approved that 30 seconds as a minimum execution time is enough to all mentioned algorithms. In addition, the quality is close to all algorithms. The results also approved that having limited time for testing generates a high-quality solution in less than 30 seconds as execution time for any mentioned algorithm. On the other hand, more available time for testing leads to a more complex problem that reduces the solutions quality.","PeriodicalId":308869,"journal":{"name":"2021 Palestinian International Conference on Information and Communication Technology (PICICT)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 Palestinian International Conference on Information and Communication Technology (PICICT)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/PICICT53635.2021.00040","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Test cases prioritization is an important action that has to be done during the testing phase within the software development life cycle. It helps to add more focus on test cases that have high priority. In addition, it helps to discover defects in early stages. Recently, Component-based architecture frontend frameworks are the most popular used technologies; hence prioritization could be connected with it. It might be connected with components reusability and their business requirements. In previous research, several solutions were proposed for test cases prioritization. The gap here, that most of these solutions were built for regression testing. Few proposed solutions were generated for new test cases, while these solutions didn't consider the new frontend technologies. This research presented a framework as an automated solution for prioritization of new test cases. Test cases represent a web application that is going to be developed using the mentioned technologies. The prioritization problem in this research was considered as a multi objective optimization problem where trade-off has to be done between different objectives. Therefore, the proposed solution considered four genetic algorithms: NSGA-II, IBEA, MOCell and SPEA2. During this research, five datasets were created since there are no available datasets. First one was created manually, while the others were created using a random approach. This proposed random approach for creating datasets, can help researchers to create any dataset with any required size for testing any similar problem. Several experiments were done during this research and using the five datasets. Results for all datasets approved that 30 seconds as a minimum execution time is enough to all mentioned algorithms. In addition, the quality is close to all algorithms. The results also approved that having limited time for testing generates a high-quality solution in less than 30 seconds as execution time for any mentioned algorithm. On the other hand, more available time for testing leads to a more complex problem that reduces the solutions quality.