My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
WhySpock  
Ten reason why Spock is for you.
Featured
Updated Feb 4, 2010 by pnied...@gmail.com
  1. Easy to learn
  2. If you know Java and JUnit, you are almost ready to go.
  3. Powered by Groovy
  4. Java's dynamic companion lets you do more in less time. Plus, it's a lot of fun!
  5. Eliminates waste
  6. No assertion API. No record/replay mocking API. No superfluous annotations. Everything is questioned, and only the essential is kept.
  7. Detailed information
  8. Spock's runtime collects a wealth of information, and presents it to you when needed.
        Condition not satisfied:
    
        max(a, b) == c
        |   |  |  |  |
        3   1  3  |  2
                  false
  9. Designed for use
  10. We always start from a user's perspective, without worrying about implementation details. Everything else follows from that.
  11. Open-minded
  12. Test-first? Test-last? Unit-level? Integration-level? Test-driven? Behavior-driven? We believe there are many ways to create good software, and try to give you the flexibility to do it your way.
  13. Beautiful language
  14. Express your thoughts in a beautiful and highly expressive specification language.
        def "subscribers receive published events at least once"() {
          when: publisher.send(event)
          then: (1.._) * subscriber.receive(event)
          where: event << ["started", "paused", "stopped"]
        }
  15. Extensible for everyone
  16. @Transaction? @SpringBean? @DeployApp? With Spock's interception-based extension mechanism, you can easily create your own extensions.
  17. Compatible with JUnit
  18. Run specifications with your IDE, build tool, and continuous integration server. Leverage JUnit's reporting capabilities.
  19. Learns from the history
  20. Spock combines the best features of proven tools like JUnit, jMock, and RSpec, and innovates on top of them.

Learn more about Spock, or get started right away.

Comment by praveena.manvi, Mar 13, 2009

supereb

Comment by vitormc...@gmail.com, Mar 14, 2012
def "subscribers receive published events at least once"() {
when: publisher.send(event) then: (1..) subscriber.receive(event) where: event << ["started", "paused", "stopped"]
}

Don't think this is expressive..... I love everything in Spock, I except for its mock mechanism.

Comment by project member pnied...@gmail.com, Mar 16, 2012

You are free to use your preferred mocking framework with Spock.


Sign in to add a comment
Powered by Google Project Hosting