This document discusses tools and techniques for functional testing of RESTful applications. It covers different levels of testing from unit to system level. It then describes using blackbox testing as a monitoring tool by generating test data, overcoming latency, and integrating with monitoring services. Graybox testing is discussed as a way to control external dependencies through mocking services. Finally, it recommends using Cucumber to develop business-focused test scenarios that are closer to documentation and easier to maintain.