Effective testing for the entire product life-cycle