Passer à la navigation principale Passer à la recherche Passer au contenu principal

Time to Clean Your Test Objectives

  • Michaël Marcozzi
  • , Mike Papadakis
  • , Sébastien Bardin
  • , Virgile Prevosto
  • , Nikolai Kosmatov
  • , Loïc Correnson
  • Imperial College London
  • University of Luxembourg
  • Software Safety and Security Lab

Résultats de recherche: Contribution à un journalArticle de conférenceRevue par des pairs

25 Citations (Scopus)

Résumé

Testing is the primary approach for detecting software defects. A major challenge faced by testers lies in crafting efficient test suites, able to detect a maximum number of bugs with manageable effort. To do so, they rely on coverage criteria, which define some precise test objectives to be covered. However, many common criteria specify a significant number of objectives that occur to be infeasible or redundant in practice, like covering dead code or semantically equal mutants. Such objectives are well-known to be harmful to the design of test suites, impacting both the efficiency and precision of the tester’s effort. This work introduces a sound and scalable technique to prune out a significant part of the infeasible and redundant objectives produced by a panel of white-box criteria. In a nutshell, we reduce this task to proving the validity of logical assertions in the code under test. The technique is implemented in a tool that relies on weakest-precondition calculus and SMT solving for proving the assertions. The tool is built on top of the Frama-C verification platform, which we carefully tune for our specific scalability needs. The experiments reveal that the pruning capabilities of the tool can reduce the number of targeted test objectives in a program by up to 27% and scale to real programs of 200K lines, making it possible to automate a painstaking part of their current testing process.

langue originaleAnglais
Pages (de - à)456-467
Nombre de pages12
journalProceedings - International Conference on Software Engineering
Volume2018-January
Les DOIs
étatPublié - 1 janv. 2018
Modification externeOui
Evénement40th International Conference on Software Engineering, ICSE 2018 - Gothenburg, Sucde
Durée: 27 mai 20183 juin 2018

Empreinte digitale

Examiner les sujets de recherche de « Time to Clean Your Test Objectives ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation