Developing appropriate functional tests