The specification, implementation, verification and validation of reactive software by means of the Lustre synchronous language is performed in a formal framework. This work aims at enhancing the present development environment by adding new tools which allow us to validate formal specifications and to test the software. We have devised a technique for randomly simulating both the software environment and the software behaviors preserving the safety properties. The concurrent execution of these simulators make possible the validation of the software specifications. The environment simulation provides a means to randomly test the software. Moreover, this technique can be improved in order to force the simulation to preferably generate test d...