• Title/Summary/Keyword: Test case prioritization

Search Result 14, Processing Time 0.018 seconds

A Dissimilarity with Dice-Jaro-Winkler Test Case Prioritization Approach for Model-Based Testing in Software Product Line

  • Sulaiman, R. Aduni;Jawawi, Dayang N.A.;Halim, Shahliza Abdul
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.15 no.3
    • /
    • pp.932-951
    • /
    • 2021
  • The effectiveness of testing in Model-based Testing (MBT) for Software Product Line (SPL) can be achieved by considering fault detection in test case. The lack of fault consideration caused test case in test suite to be listed randomly. Test Case Prioritization (TCP) is one of regression techniques that is adaptively capable to detect faults as early as possible by reordering test cases based on fault detection rate. However, there is a lack of studies that measured faults in MBT for SPL. This paper proposes a Test Case Prioritization (TCP) approach based on dissimilarity and string based distance called Last Minimal for Local Maximal Distance (LM-LMD) with Dice-Jaro-Winkler Dissimilarity. LM-LMD with Dice-Jaro-Winkler Dissimilarity adopts Local Maximum Distance as the prioritization algorithm and Dice-Jaro-Winkler similarity measure to evaluate distance among test cases. This work is based on the test case generated from statechart in Software Product Line (SPL) domain context. Our results are promising as LM-LMD with Dice-Jaro-Winkler Dissimilarity outperformed the original Local Maximum Distance, Global Maximum Distance and Enhanced All-yes Configuration algorithm in terms of Average Fault Detection Rate (APFD) and average prioritization time.

A Comprehensive Review on Regression Test Case Prioritization Techniques for Web Services

  • Hasnain, Muhammad;Ghani, Imran;Pasha, Muhammad Fermi;Lim, Chern Hong;Jeong, Seung Ryul
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.14 no.5
    • /
    • pp.1861-1885
    • /
    • 2020
  • Test Case Prioritization (TCP) involves the rearrangement of test cases on a prioritized basis for various services. This research work focuses on TCP in web services, as it has been a growing challenge for researchers. Web services continuously evolve and hence require reforming and re-execution of test cases to ensure the accurate working of web services. This study aims to investigate gaps, issues, and existing solutions related to test case prioritization. This study examines research publications within popular selected databases. We perform a meticulous screening of research publications and selected 65 papers through which to answer the proposed research questions. The results show that criteria-based test case prioritization techniques are reported mainly in 41 primary studies. Test case prioritization models, frameworks, and related algorithms are also reported in primary studies. In addition, there are eight issues related to TCP techniques. Among these eight issues, optimization and high effectiveness are most discussed within primary studies. This systematic review has identified that a significant proportion of primary studies are not involved in the use of statistical methods in measuring or comparing the effectiveness of TCP techniques. However, a large number of primary studies use 'Average Percentage of Faults Detected' (APFD) or extended APFD metrics to compute the performance of techniques for web services.

An Intelligent Framework for Test Case Prioritization Using Evolutionary Algorithm

  • Dobuneh, Mojtaba Raeisi Nejad;Jawawi, Dayang N.A.
    • Journal of Internet Computing and Services
    • /
    • v.17 no.5
    • /
    • pp.89-95
    • /
    • 2016
  • In a software testing domain, test case prioritization techniques improve the performance of regression testing, and arrange test cases in such a way that maximum available faults be detected in a shorter time. User-sessions and cookies are unique features of web applications that are useful in regression testing because they have precious information about the application state before and after making changes to software code. This approach is in fact a user-session based technique. The user session will collect from the database on the server side, and test cases are released by the small change configuration of a user session data. The main challenges are the effectiveness of Average Percentage Fault Detection rate (APFD) and time constraint in the existing techniques, so in this paper developed an intelligent framework which has three new techniques use to manage and put test cases in group by applying useful criteria for test case prioritization in web application regression testing. In dynamic weighting approach the hybrid criteria which set the initial weight to each criterion determines optimal weight of combination criteria by evolutionary algorithms. The weight of each criterion is based on the effectiveness of finding faults in the application. In this research the priority is given to test cases that are performed based on most common http requests in pages, the length of http request chains, and the dependency of http requests. To verify the new technique some fault has been seeded in subject application, then applying the prioritization criteria on test cases for comparing the effectiveness of APFD rate with existing techniques.

Risk-based Test Case/Test Set Value Estimation Model (리스크 기반 테스트 케이스/테스트 세트 가치 추정 모델)

  • Kwon, Won-Il;Kim, Jong-Ku;Kwon, Ho-Yeol
    • Journal of Industrial Technology
    • /
    • v.32 no.A
    • /
    • pp.125-128
    • /
    • 2012
  • In this paper, we proposed a prioritization method of test cases using a value estimation model of test sets, that are key elements for highly effective software testings as well as involve a large cost factor in software developments and maintenances. Based on previous studies, our idea includes introducing some practical factors of the test case prioritization which critically influence the value of a test case: Relative values of test sets before and after the test running, Average value of these two relative values, Severity of the defect, Risks that are covered, Frequency of use, Change related values, Systematic elicitations, etc. Finally we discussed the usefulness and the expected effects of the proposed scheme.

  • PDF

A Systematic Literature Review of Test Case Prioritization Technique on Software Product Line Testing

  • Siti Hawa Mohamed Shareef;Rabatul Aduni Sulaiman;Abd Samad Hasan Basari
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.18 no.10
    • /
    • pp.2872-2894
    • /
    • 2024
  • Software product lines (SPL) leverage extensive reuse to enhance quality and competitiveness. However, the inherent high testing risks underscore the need for efficient techniques. Test case prioritization (TCP) emerges as a pivotal strategy for improving defect detection by optimizing the arrangement of test cases, thereby maximizing benefits, particularly when testing is prematurely halted. This paper presents a comprehensive review of the latest TCP techniques, investigating emerging trends, varied approaches, and the associated cost-effectiveness trade-offs. Through a systematic literature review spanning from 2011 to 2023 and employing specific search terms, this study scrutinizes the existing body of research. The analysis reveals a growing demand for TCP in research over the past five years, accompanied by a positive upsurge in SPL testing trends. TCP proves instrumental in orchestrating test cases from high to low priority levels, facilitating early defect detection and subsequent error resolution. Nonetheless, notable gaps persist in terms of time execution and coverage, prompting ongoing research efforts aimed at enhancing the cost-effectiveness of TCP. While TCP serves as a potent regression technique in software testing, existing approaches stand to benefit from the reordering of test cases and the integration of refined methodologies gleaned from current research endeavors.

A Regression Test Selection and Prioritization Technique

  • Malhotra, Ruchika;Kaur, Arvinder;Singh, Yogesh
    • Journal of Information Processing Systems
    • /
    • v.6 no.2
    • /
    • pp.235-252
    • /
    • 2010
  • Regression testing is a very costly process performed primarily as a software maintenance activity. It is the process of retesting the modified parts of the software and ensuring that no new errors have been introduced into previously tested source code due to these modifications. A regression test selection technique selects an appropriate number of test cases from a test suite that might expose a fault in the modified program. In this paper, we propose both a regression test selection and prioritization technique. We implemented our regression test selection technique and demonstrated in two case studies that our technique is effective regarding selecting and prioritizing test cases. The results show that our technique may significantly reduce the number of test cases and thus the cost and resources for performing regression testing on modified software.

Empirical Study on Test Case Prioritization Techniques of Regression Testing (회귀 테스팅의 테스트 케이스 우선 순위화 기법의 실험적 연구)

  • So Sun Sup;Chae Yigeun
    • The KIPS Transactions:PartD
    • /
    • v.12D no.2 s.98
    • /
    • pp.283-288
    • /
    • 2005
  • Test case prioritization methods schedule test cases for execution when we can not practically run all test cases for regression testing. We proposed a new prioritization method that is based on historical execution and mr detection data. And we conducted an experiment to compare the proposed method with existing Random and LRU methods using the fault age under the long run environment as criterion. The experiment shows several interesting results. First, our results show that they are complementary. Random method shows good performance for programs that have many error-detectable test cases and HED is more effective for the programs that can be detected by very small amount of test cases. But LRU is more effective for the programs that have relatively medium amount of error detectable test cases. Next, the performance of prioritization method is affected by the size of test suites. Two experiments that have different size of test suites show considerably different fault ages and performance order. And lastly, the $20\%$ of test cases shows considerably good performance compared to the execution result of the full test suite.

A Study on the Selection of Test Scope and the Prioritization of Test Case Based on Modification Method for Regression Testing (변경 메서드 기반의 회귀 테스트 검증 범위 선택 및 검증 항목 우선순위 선정에 관한 연구)

  • Jung, Woo-Jin;Rah, Sang-Rin;Choi, Yong-Lak
    • Journal of Information Technology Services
    • /
    • v.14 no.2
    • /
    • pp.129-142
    • /
    • 2015
  • The purpose of this study is to suggest an effective regression testing method in order to minimize the scope of test resulting from the modification of software and to prevent mismatch of test case and test objects. As a way to improve the efficiency of regression testing which uses a change-centric testing technique, the method flow is analyzed and grasped through a static analysis based on source code in order to identify modified parts. After the order of priority is set according to the results of user action log-based dynamic analysis on identified regression testing objects, test effect can be raised by adjusting the order of priority using code complexity. Quality assurance coverage can be checked using the user action log suggested in this study, and the progress of test and whether or not each function has been verified can be checked, too. In addition, by minimizing test parts and adjusting the order of test, costs and time can be saved, making it possible to conduct regression testing effectively.

Investigating the Regression Analysis Results for Classification in Test Case Prioritization: A Replicated Study

  • Hasnain, Muhammad;Ghani, Imran;Pasha, Muhammad Fermi;Malik, Ishrat Hayat;Malik, Shahzad
    • International Journal of Internet, Broadcasting and Communication
    • /
    • v.11 no.2
    • /
    • pp.1-10
    • /
    • 2019
  • Research classification of software modules was done to validate the approaches proposed for addressing limitations in existing classification approaches. The objective of this study was to replicate the experiments of a recently published research study and re-evaluate its results. The reason to repeat the experiment(s) and re-evaluate the results was to verify the approach to identify the faulty and non-faulty modules applied in the original study for the prioritization of test cases. As a methodology, we conducted this study to re-evaluate the results of the study. The results showed that binary logistic regression analysis remains helpful for researchers for predictions, as it provides an overall prediction of accuracy in percentage. Our study shows a prediction accuracy of 92.9% for the PureMVC Java open source program, while the original study showed an 82% prediction accuracy for the same Java program classes. It is believed by the authors that future research can refine the criteria used to classify classes of web systems written in various programming languages based on the results of this study.

A Test Case Prioritization Technique via Value-Based Approach (가치기반 접근법을 통한 테스트 케이스 우선순위 기법)

  • Park, Hyun-Cheol;Ryu, He-Yeon;Baik, Jong-Moon
    • Journal of KIISE:Software and Applications
    • /
    • v.36 no.5
    • /
    • pp.353-360
    • /
    • 2009
  • Software, once developed, has a long life and evolves through numerous additions and modifications because of the faults, the changes in user requirements, the changes in environments, and so forth. With the evolution of the software, assuring the quality of the software is getting more difficult because of numerous versions of the software. Meanwhile, regression testing has been used to support the software testing activities and assure acquiring appropriate quality through several versions of software. Regression testing, however, is too expensive because it requires lots of test cases executions and the number of test cases increases sharply as the software evolves. For this reason, several techniques are suggested to help conducting regression testing then test case prioritization technique is understood the most effective and efficient technique to support regression testing. In this paper, we propose an approach, Historical Value-Based Approach, which is based on the use of historical information to estimate the current cost and fault severity for cost-cognizant test case prioritization. As a result of the proposed approach, software testers who perform regression testing prioritize their test cases more effectively so that the test effectiveness of them can be improved in terms of APFDc.