refactor exist test generate strategy