Agile2008 Jdemo Slides

572 views

Published on

My JDemo presentation at Agile 2008, Toronto

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
572
On SlideShare
0
From Embeds
0
Number of Embeds
23
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Agile2008 Jdemo Slides

  1. 1. JDemo Lightweight Exploratory Developer Testing Ilja Preuß preuss@disy.net disy Informationssysteme GmbH, Karlsruhe, Germany Agile 2008 Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  2. 2. Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  3. 3. Motivation Introduction to JDemo Demonstration Experiences Demos as Tests More Features Summary and Advice Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  4. 4. Motivation Rich client application with “complex” user interface. Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  5. 5. Motivation hard to test (automatically): aesthetics usability Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  6. 6. Motivation ⇒ manual (exploratory) testing Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  7. 7. Motivation seeing your creation in action motivator Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  8. 8. Motivation problem: to see a specific component in action start application prepare needed scenario Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  9. 9. Motivation known solutions: “interactive” unit tests → hack, not permanent, brittle write main methods → lots of boiler plate code, unorganized Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  10. 10. Questions: What would a JUnit-like framework for exploratory testing look like? What would using such a framework be like? Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  11. 11. JUnit vs. JDemo JUnit JDemo TestCase . . . DemoCase test . . . demo . . . Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  12. 12. JUnit vs. JDemo JUnit JDemo arrange arrange show act explore assert Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  13. 13. Let’s try it! The Test/Code Cycle in XP William C. Wake http://www.xp123.com/xplor/xp0001/index.shtml Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  14. 14. Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  15. 15. Experience writing demos increases flow fosters decoupling and reusability creates executable documentation gives feedback on usability Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  16. 16. Case Study 27 demos Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  17. 17. Case Study startup/arrangement times: application: 45s demo: 4s Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  18. 18. Case Study 61 demo-starts, 62 application starts 1 application start (hypothetical) Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  19. 19. Demos as Smoketests problem: demos are executed in “chunks” unused code breaks → demos break over time Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  20. 20. Demos as Smoketests idea: tests are executed regularly, as part of continuous integration → automatically convert demos to smoke tests and execute them as part of the projects test suite Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  21. 21. More Features setup / teardown suites of demos @Demo annotation specification of timeout show source code run with different look and feels Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  22. 22. Even More Features demos for AWT, SWT, files, sound . . . automated creation of screen shots via Ant task Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  23. 23. Open Questions collaboration with QA/technical writers demos for web applications web demo runner (applet?) Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  24. 24. Summary exploratory testing is a valuable part of the development cycle tool support can help integrate exploratory testing more tightly into the development work JDemo is a lightweight open source framework for Java that is aimed at providing that support Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  25. 25. Some Small Advice first learn Test Driven Development then learn to test-drive user interfaces only then take a look at JDemo Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing
  26. 26. Thanks! preuss@disy.net www.jdemo.de Ilja Preuß, disy Informationssysteme GmbH JDemo - Lightweight Exploratory Developer Testing

×