Configuration Testing: Testing Configuration Values as Code and with Code

05/29/2019
by   Tianyin Xu, et al.
0

This paper proposes configuration testing--evaluating configuration values (to be deployed) by exercising the code that uses the values and assessing the corresponding program behavior. We advocate that configuration values should be systematically tested like software code and that configuration testing should be a key reliability engineering practice for preventing misconfigurations from production deployment. The essential advantage of configuration testing is to put the configuration values (to be deployed) in the context of the target software program under test. In this way, the dynamic effects of configuration values and the impact of configuration changes can be observed during testing. Configuration testing overcomes the fundamental limitations of de facto approaches to combatting misconfigurations, namely configuration validation and software testing--the former is disconnected from code logic and semantics, while the latter can hardly cover all possible configuration values and their combinations. Our preliminary results show the effectiveness of configuration testing in capturing real-world misconfigurations. We present the principles of writing new configuration tests and the promises of retrofitting existing software tests to be configuration tests. We discuss new adequacy and quality metrics for configuration testing. We also explore regression testing techniques to enable incremental configuration testing during continuous integration and deployment in modern software systems.

READ FULL TEXT
research
05/29/2019

Configuration Testing: Testing Configuration Values Together with Code Logic

This paper proposes configuration testing as a key reliability engineeri...
research
01/13/2020

Testing with Jupyter notebooks: NoteBook VALidation (nbval) plug-in for pytest

The Notebook validation tool nbval allows to load and execute Python cod...
research
01/07/2019

Evaluating software defect prediction performance: an updated benchmarking study

Accurately predicting faulty software units helps practitioners target f...
research
11/06/2021

An Adaptive Honeypot Configuration, Deployment and Maintenance Strategy

Since honeypots first appeared as an advanced network security concept t...
research
03/10/2023

Better Safe Than Sorry! Automated Identification of Functionality-Breaking Security-Configuration Rules

Insecure default values in software settings can be exploited by attacke...
research
05/11/2018

Statically Verifying Continuous Integration Configurations

Continuous Integration (CI) testing is a popular software development te...
research
05/29/2022

Rapid Regression Detection in Software Deployments through Sequential Testing

The practice of continuous deployment has enabled companies to reduce ti...

Please sign up or login with your details

Forgot password? Click here to reset