This article is a survey paper on solving spacecraft trajectory optimization problems. The solving process is decomposed into four key steps of mathematical modeling of the problem, defining the objective functions, development of an approach and obtaining the solution of the problem. Several subcategories for each step have been identified and described. Subsequently, important classifications and their characteristics have been discussed for solving the problems. Finally, a discussion on how to choose an element of each step for a given problem is provided.