Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Specs2 3.4

15,955 views

Published on

specs2 3.4 presentation at ScalaSyd

Published in: Technology
  • Be the first to comment

Specs2 3.4

  1. 1. Specs2 3.x ScalaSyd
  2. 2. Changes User guide API ScalaCheck HTML & more
  3. 3. If you missed the beginning…
  4. 4. If you missed the beginning…
  5. 5. And more!
  6. 6. And more!
  7. 7. 3.x, why?
  8. 8. Why? http://bit.ly/lambdajam-2014-specs2 Scalaz-stream inside
  9. 9. 9 Changes
  10. 10. 10 User Guide
  11. 11. User Guide
  12. 12. User Guide
  13. 13. User Guide
  14. 14. User Guide
  15. 15. User Guide
  16. 16. Home Page
  17. 17. API - breaks
  18. 18. API - breaks Before After
  19. 19. API - breaks Contexts
  20. 20. Specification execution Text1Text1 Example1Example1 Example2Example2 Example3Example3 Text1Text1 Step 1Step 1 Example2Example2 Example3Example3 Example1Example1
  21. 21. BeforeAll / AfterAll Text1Text1 Step 1Step 1 Example2Example2 Example3Example3 Example1Example1 BeforeAllBeforeAll AfterAllAfterAll
  22. 22. Example
  23. 23. Example Example1Example1 This is a great exampleThis is a great example R : ResultR : Result
  24. 24. BeforeEach / AfterEach
  25. 25. BeforeEach / AfterEach Example1Example1 This is a great exampleThis is a great example before after before after R : ResultR : Result
  26. 26. ForEach
  27. 27. ForEach Example1Example1 This is a great exampleThis is a great example val t: T = ??? e Result val t: T = ??? e Result T => R : ResultT => R : Result
  28. 28. ForEach Example1Example1 This is a great exampleThis is a great example val t: T = ??? before try f(t) finally after val t: T = ??? before try f(t) finally after T => R : ResultT => R : Result
  29. 29. API - breaks Before After
  30. 30. API – nesting / graph Before After
  31. 31. Specification links Text1Text1 Link1Link1 Link2Link2 exampleexample Example1Example1 Example2Example2 Example3Example3 Example4Example4 Link3Link3
  32. 32. Specification links sbt> test-only Spec1 [info] Spec1 [info] Text1 [info] * Spec2 [info] * Spec3 [info] + example sbt> test-only Spec1 [info] Spec1 [info] Text1 [info] * Spec2 [info] * Spec3 [info] + example sbt> test-only Spec1 -- all [info] Spec2 [info] Spec3 [info] [info] Spec1 [info] Text1 [info] + Spec2 [info] + Spec3 [info] + example sbt> test-only Spec1 -- all [info] Spec2 [info] Spec3 [info] [info] Spec1 [info] Text1 [info] + Spec2 [info] + Spec3 [info] + example
  33. 33. Before / After everything! BeforeBefore AfterAfter Example1Example1 Example2Example2 BeforeBefore AfterAfter Spec nSpec n
  34. 34. API - fragments After
  35. 35. API - breaks Before After
  36. 36. New stuff!
  37. 37. API - Specification After
  38. 38. API – Reader pattern After
  39. 39. API – Reader pattern After
  40. 40. API – Reporting After Composable! custom
  41. 41. HTML
  42. 42. HTML
  43. 43. HTML
  44. 44. Foreach - functionally
  45. 45. ScalaCheck
  46. 46. ScalaCheck
  47. 47. & more Text1Text1 Example1Example1 Example2Example2 Example3Example3 Text1Text1 Example1Example1 Example2Example2 Example3Example3 Example2.1Example2.1 Example2.2Example2.2
  48. 48. & more
  49. 49. & more
  50. 50. & more sbt> test-only FuturesSpec -- timefactor 3sbt> test-only FuturesSpec -- timefactor 3
  51. 51. & more
  52. 52. Can you help? • try it and report issues! • extends the Notifier for Steps • fix/close #256: “make specs2 aware of JUnit categories” • create a PDF Printer • create an Eclipse plugin • add coverage to the build • add more specs/properties!
  53. 53. Thanks! 3.x, Doc!

×