Spock is a testing framework for Java and Groovy applications that is inspired by JUnit, RSpec, jMock, Mockito, Groovy and Scala. It uses a specification-based approach to testing that allows tests to be written in a more expressive manner than traditional unit tests. Spock tests can range from unit to end-to-end testing and leverage Groovy language features.