FaMa Test Suite
FaMa Test
Suite is a set of implementation-independent test cases to validate the
functionality of tools supporting the analysis of feature models.
Through the implementation of these test cases, faults can be rapidly
detected improving the reliability and quality of FM analysis tools.
For its design and evaluation, popular techniques from the software
testing community were used. For more details, have a look
here.
How can I use FaMa Test Suite?
Test cases included in FaMa Test Suite are mainly inputs-outputs combinations specifically designed to reveal failures in the implementation of analysis operations on feature models. You simply need to implement our test cases in the desired language/platform and execute them.
Why using
FaMa Test Suite?
Some reasons for using FaMa Test Suite
are:
- It is implementation-independent.
Test cases included in the suite are designed in terms of the inputs and outputs of the analysis operations.
- It is a
handy and efficient mechanism to
assess the functionality of your analysis tools. The execution of the
whole suite takes around one
minute.
- It may used to
show the quality of
your analysis solutions to the
community.
Which analysis operation can be tested
using FaMa Test Suite?
Current
version of FaMa Test Suite can be used to validate the functionality of
the following analysis operations:
Questions represent analysis operations that we can apply over a feature model. Actually we support those questions.
Operation | Description |
Valid | This operation takes a feature
model as input and returns a value informing whether such feature model
is void or not. A feature model is void if it represents no
products. |
Valid product
| This operation checks whether an input product
(i.e. set of features) belongs to the set of products represented by a
given feature model or
not. |
Products | This
operation takes a feature model as input and returns all the products
represented by the
model. |
Number of products
| This operation returns the number of products
represented by a feature
model. |
Variability | This
operation takes a feature model as input and returns the ratio between
the number of products and 2n-1 where n is the
number of features in the
model. |
Commonality | This
operation takes a feature model and a feature as inputs and returns a
value representing the proportion of valid products in which the
feature appears. |
Detect errors
| This operation takes a feature model as
input and returns a set of dead features (if any). A dead feature is a
feature that never appears in any of the products represented by the
feature model. |
Submenu