planning and testing