what are the five steps in functional testing​