As presented at API Conference DE 2017 on September 20, 2017
------------
Documentation generated from source code is very popular. Solutions such as Swagger are available for many different languages and frameworks. However, limitations of annotation based tools are becoming apparent. An overwhelming number of documentation annotations make for great docs but muddy the source code. Then, something changes and the docs are out of date again.
That is where test-driven approaches come in. Test-driven documentation solutions, such as Spring REST Docs, generate example snippets for requests and responses from tests ensuring both code coverage and accurate documentation. It can even fail the build when documentation becomes out of date. This session will walk through how to implement test-driven documentation solutions. Attendees should have a basic understanding of a markdown like documentation tool such as AsciiDoc and how to construct RESTful APIs in a JVM ecosystem technology such as Spring Boot. Examples will be in Spring Boot and Groovy, but the concepts are applicable to other ecosystems too.