Skip to Main content Skip to Navigation

Test à partir de spécifications axiomatiques

Abstract : Testing is a very common practice in the software development process. The testing activity consists in executing the software on a subset of all its possible inputs in order to detect failures. A failure is detected when the software behaviour does not conform to its expected behaviour, represented or described by a reference object. The testing process is usually decomposed into three phases: the selection of the subset of inputs on which the software will be executed, the submission of these inputs to the software, collecting the outputs (the software answers) and the decision of the relevance of these outputs, when compared to the expected ones.

The selection of inputs to submit to the software can be performed according to different approaches. When the test set selection phase is based on a reference object describing more or less formally the software expected behaviour, without any knowledge about the implementation, testing is said to be "black-box". Among the different black-box testing approaches, a formal framework has been defined for the one using as a reference object a logical specification of the system under test.

The general framework for testing from logical (or axiomatic) specifications fixes the conditions and the hypotheses under which it is possible to test a system. The first hypothesis consists in considering the system under test as a formal model implementing the operations behaviour of which is described in the specification. The second hypothesis concerns the observability of the system under test. To be a test case, a formula has to be interpreted by the system under test. Then the form of formulas that the system is able to interpret must be fixed. These formulas usually do not contain variables. Once these hypotheses are set, we have an initial test set, the set of all observable formulas that are logical consequences of the specification.

The first result to establish is the exhaustiveness of this set, that is its ability to prove the system correctness if it could be submitted in its whole. The exhaustive test set is usually of infinite size, a selection phase is then needed in order to choose a test set of finite and reasonable size to submit to the system. Several approaches are possible. The approach followed in my thesis, called partition testing, consists in dividing the initial exhaustive test set into test subsets, according to a certain selection criterion corresponding to a functionality or a characteristic of the system under test. Once this partition is fine enough, building a test set consists in choosing one test case in each obtained subset, thus applying the uniformity hypothesis (test cases in a test set all are equivalent to make the system fail). The second result to establish is to show that the division of the initial test set do not add (procedure correctness) neither lose (completeness) any test case.

In the algebraic specification framework, a method that has extensively been studied, called axiom unfolding, consists in making a case analysis of the specification. Until now, this method was based on equational specifications whose axioms had the characteristic to be positive conditional (a conjunction of axioms implies an equation).

My PhD work was aimed at extending and adapting this test selection framework to dynamic systems specified in an axiomatic formalism, namely first-order modal logic. The first step was to generalise the selection method that has been defined for positive conditional equational specifications to first-order specifications. This testing framework was then adapted to first-order modal specifications. The first specification formalism considered was a modal extension of positive conditional logic for which the testing framework has been defined. Once the framework has been adapted to positive conditional modal specifications, it could be generalised to first-order modal specifications.

In each of these formalisms, we achieved two goals. On the one hand, we studied the necessary conditions to impose to the specification and the system under test in order to obtain the exhaustiveness of the initial test set. On the other hand, we adapted and extended the selection procedure by axiom unfolding to these formalisms and showed its correctness and completeness. In the two general frameworks of first-order and first-order modal specifications, we showed that the conditions required for the exhaustiveness of the initial test set were minor because they were easy to ensure in practice. This ensures a satisfying generalisation of test selection in this setting.
Document type :
Complete list of metadatas
Contributor : Delphine Longuet <>
Submitted on : Monday, February 25, 2008 - 2:27:40 PM
Last modification on : Tuesday, June 30, 2020 - 11:56:01 AM
Long-term archiving on: : Thursday, May 20, 2010 - 11:31:25 PM


  • HAL Id : tel-00258792, version 1



Delphine Longuet. Test à partir de spécifications axiomatiques. Génie logiciel [cs.SE]. Université d'Evry-Val d'Essonne, 2007. Français. ⟨tel-00258792⟩



Record views


Files downloads