[[testing]]
= Testing
include::attributes.adoc[]
include::page-layout.adoc[]

This chapter covers Spring's support for integration testing and best practices for unit
testing. The Spring team advocates test-driven development (TDD). The Spring team has
found that the correct use of inversion of control (IoC) certainly does make both unit
and integration testing easier (in that the presence of setter methods and appropriate
constructors on classes makes them easier to wire together in a test without having to
set up service locator registries and similar structures).


include::testing/testing-introduction.adoc[leveloffset=+1]

include::testing/unit-testing.adoc[leveloffset=+1]

include::testing/integration-testing.adoc[leveloffset=+1]

include::testing/testing-support-jdbc.adoc[leveloffset=+1]

include::testing/testcontext-framework.adoc[leveloffset=+1]

include::testing/testing-webtestclient.adoc[leveloffset=+1]

include::testing/spring-mvc-test-framework.adoc[leveloffset=+1]

include::testing/spring-mvc-test-client.adoc[leveloffset=+1]

include::testing/testing-appendix.adoc[leveloffset=+1]
