Search-based Software Testing Driven by Automatically Generated and Manually Defined Fitness Functions

07/22/2022
by   Federico Formica, et al.
0

Search-based software testing (SBST) typically relies on fitness functions to guide the search exploration toward software failures. There are two main techniques to define fitness functions: (a) automated fitness function computation from the specification of the system requirements and (b) manual fitness function design. Both techniques have advantages. The former uses information from the system requirements to guide the search toward portions of the input domain that are more likely to contain failures. The latter uses the engineers' domain knowledge. We propose ATheNA, a novel SBST framework that combines fitness functions that are automatically generated from requirements specifications and manually defined by engineers. We design and implement ATheNA-S, an instance of ATheNA that targets Simulink models. We evaluate ATheNA-S by considering a large set of models and requirements from different domains. We compare our solution with an SBST baseline tool that supports automatically generated fitness functions, and another one that supports manually defined fitness functions. Our results show that ATheNA-S generates more failure-revealing test cases than the baseline tools and that the difference between the performance of ATheNA-S and the baseline tools is not statistically significant. We also assess whether ATheNA-S could generate failure-revealing test cases when applied to a large case study from the automotive domain. Our results show that ATheNA-S successfully revealed a requirement violation in our case study.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/22/2022

Simulation-based Testing of Simulink Models with Test Sequence and Test Assessment Blocks

Simulation-based software testing supports engineers in finding faults i...
research
05/29/2023

Test Case Generation for Drivability Requirements of an Automotive Cruise Controller: An Experience with an Industrial Simulator

Automotive software development requires engineers to test their systems...
research
10/06/2021

A Critical Review of the Baseline Soldier Physical Readiness Requirements Study

The Army's Baseline Soldier Physical Readiness Requirements Study (BSPRR...
research
06/02/2020

Kaya: A Testing Framework for Blockchain-based Decentralized Applications

In recent years, many decentralized applications based on blockchain (DA...
research
08/22/2023

A multi-case study of agile requirements engineering and the use of test cases as requirements

Context: It is an enigma that agile projects can succeed 'without requir...
research
05/21/2019

A comparison of evaluation methods in coevolution

In this research, we compare four different evaluation methods in coevol...
research
04/25/2023

Test adequacy evaluation for the user-database interaction: a specification-based approach

Testing a database application is a challenging process where both the d...

Please sign up or login with your details

Forgot password? Click here to reset