What are the roles of testing tools?