Speeding up Mutation Testing via Regression Test Selection: An Extensive Study

نویسندگان

  • Lingchao Chen
  • Lingming Zhang
چکیده

Mutation testing is one of the most powerful methodologies to evaluate the quality of test suites, and has also been demonstrated to be effective for various other testing and debugging problems, e.g., test generation, fault localization, and program repair. However, despite various mutation testing optimization techniques, mutation testing is still notoriously timeconsuming. Regression Testing Selection (RTS) has been widely used to speed up regression testing. Given a new program revision, RTS techniques only select and rerun the tests that may be affected by code changes, since the other tests should have the same results as the prior revision. To date, various practical RTS tools have been developed and used in practice. Intuitively, such RTS tools may be directly used to speed up mutation testing of evolving software systems, since we can simply recollect the mutation testing results of the affected tests while directly obtaining the mutation testing results for the other tests from the prior revision. However, to our knowledge, there is no such study. Therefore, in this paper, we perform the first extensive study (using 1513 revisions of 20 real-world GitHub Java projects, totalling 83.26 Million LoC) on the effectiveness and efficiency of various RTS techniques in speeding up mutation testing. Our study results demonstrate that both file-level static and dynamic RTS can achieve precise and efficient mutation testing, providing practical guidelines for developers.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Redroid: A Regression Test Selection Approach for Android Applications

As the mobile platform pervades human life, much research in recent years has focused on improving the reliability of mobile applications on this platform, for example by applying automatic testing. However, researchers have primarily considered testing of single version of mobile applications. Although regression testing has been extensively studied for desktop applications, and many efficient...

متن کامل

An efficient specification-based regression test selection technique for EE-systems

Regression testing, a methodology originally developed for software development, is used to revalidate a (software) system in-between release cycles after having implemented changes. In practice there is always limited time to perform a full retest of a system; therefore a random/prioritizing-testing approach is often chosen to perform at least some regression testing. However, the lack of adeq...

متن کامل

Predictors of speeding among drivers based on Prototype Willingness Model

Background: Every year 1.2 millions of people are killed in road accident, and speeding is a major contributor road crashes among young driver. Accounting 40% of fatal crashes involved speeding. The purpose of this study was determining predictor of speeding intention among young driver 19-25 years old young driver in ghaemshahr based on Prototype Willingness Model. Materials and methods: I...

متن کامل

Evaluating the Application of Reinforcement Correction Factor for Concrete Core Testing

This study investigates the reinforcement correction factor of concrete core in more detail to prepare appropriate outlines for interpretation of results. This investigation aims to minimize uncertainties involved to carry out the more realistic condition assessment of suspect buildings before taking up retrofitting/strengthening measures. For this purpose, an extensive experimental program inc...

متن کامل

A Systematic Review of Regression Test Selection Techniques: An Empirical Study

Regression testing is an important and expensive activity that is undertaken every time a program is modified to ensure that the modifications do not introduce new bugs into previously validated code. An important research problem. Since regression testing is an expensive process, researchers have proposedregression test selection techniques as a way to reduce some of this expense. These techni...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2018