This paper addresses the problem of executing abstract tests on distributed software. Although our focus is on specification based behavior testing that exploits model based test generation, we provide an environment that supports both automatic and manual test generation. Tests derived from a specification are by nature abstract. The tester must manually convert the abstract tests into their concrete executable form. We claim that a test execution environment designed to execute abstract tests can transform and execute these tests efficiently to verify distributed software. We also claim that the same abstract tests can be reused and extended to verify issues related to concurrency, stress, and input data variations. We describe the test execution environment and discuss an industrial trial that exploited a prototype of the system to improve the testing of a distributed application. The trial reused a behavior test suite generated for its function test and executed it in its system test. The reuse required no additional coding and was successful in discovering five additional defects related to concurrency.