Decomposition Based Testing