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.

I Smell A RAT- Rapid Application Testing

3,206 views

Published on

Published in: Technology
  • Be the first to comment

I Smell A RAT- Rapid Application Testing

  1. 1. I Smell A RAT Rapid Application Testing Peter Presnell (GBS)
  2. 2. Peter Presnell
  3. 3. Contact Information <ul><li>Twitter: PeterPresnell
  4. 4. Blog: www.bleedyellow.com (www.planetlotus.org)
  5. 5. Skype: peter.presnell
  6. 6. LinkedIn: PeterPresnell
  7. 7. Sametime: Yellowbleeders </li></ul>www.bleed yellow .com
  8. 8. Effer Of The Ineffible Adjective Incapable of being expressed or described in words; inexpressible Not to be spoken because of its sacredness; unutterable
  9. 9. And So To Testing.... “ Testing is an infinite process of comparing the invisible to the ambiguous in order to avoid the unthinkable happening to the anonymous ” James Bach
  10. 10. Are There Any Testers In The Room?
  11. 11. “ we have as many testers as we have developers. And testers spend all their time testing, and developers spend half their time testing. We're more of a testing , a quality software organization than we're a software organization . ” Bill Gates (Information Week, May 2002)
  12. 12. Name Your Poison
  13. 13. Test Planning Make testing more of a science than an art
  14. 14. Unit Testing Applications work because each of the parts ( units ) do their job
  15. 15. Unit Testing <ul><li>LotusScript is easier to unit test than @Formula
  16. 16. OO LS is easier to unit test than Procedural LS
  17. 17. Java is easier to unit test than SSJS
  18. 18. MY code is always easier to test than YOURS ! </li></ul>www.junit.org www.junit.org
  19. 19. Testing XPages? Medusa www.openntf.org
  20. 20. Integration Testing Validate the little bits with some big picture testing
  21. 21. Smoke Testing Those tests which must always be executed every time
  22. 22. System Testing <ul><li>What did we add ?
  23. 23. What did we change .
  24. 24. What did we fix ? </li></ul>
  25. 25. Regression Testing Ouch... did something else break?
  26. 26. Performance Testing One user on a local workstation: OK 1,000 users on a shared prod. server: ???
  27. 27. Finding Memory Leaks www.yourkit.com
  28. 28. RAT: Kill Bugs Faster
  29. 29. Rapid Application Development RAD is a methodology and NOT a speed contest
  30. 30. “Is That What You Want”
  31. 31. XPages “ XPages Is Less RAD Than Classic Notes” Peter Presnell, AUSLUG 2011
  32. 32. Agile Methodologies www.rallydev.com
  33. 33. Test Driven Development Define your criteria for success before you start to write the solution
  34. 34. TDD: Example <ul><li>Requirement: </li><ul><li>Salary Field: Numeric </li></ul><li>TDD : </li><ul><li>When field contains non-numeric characters Fail …
  35. 35. When field is zero Fail ....
  36. 36. When field is negative Fail …
  37. 37. When field is not an integer Modify & Pass …
  38. 38. Else Pass </li></ul></ul>
  39. 39. Automated Test Plans More time and effort should go into test planning than test execution . Rapid requires Automation
  40. 40. Automated Test Execution Automation allows the same test to be run many times for little additional cost www.seleniumhq.org
  41. 41. The Art Of Trapping Notes Bugs?
  42. 42. DXL ... the answer is out there
  43. 43. CRUD For each Form/Object.... Can I Create , Read , Update , and Delete (where applicable)
  44. 44. CRUD
  45. 45. CRUD
  46. 46. UI Components Ensuring every component behaves the way it should
  47. 47. UI Components (XPages)
  48. 48. UI Components
  49. 49. UI State For every combination of Hide-When (Visible, Rendered) what can I see (or not see)
  50. 50. UI State
  51. 51. Event Model What events do I have, and do they work at the correct time in the correct sequence ?
  52. 52. Event Model
  53. 53. Event Model (Logging)
  54. 54. Event Model (Program Logic) www.aivosto.com
  55. 55. Styling Beauty is in the eye of the beholder
  56. 56. Styling
  57. 57. Workflow Define and verify states and transitions
  58. 58. Building a “Before And After” Mousetrap
  59. 59. Common Scenarios <ul><li>Who wrote this $%&* code!
  60. 60. Migrating to a new release
  61. 61. Migrating to XPages
  62. 62. Adding a Mobile interface </li></ul>
  63. 63. True Or False? Our company's Notes applications are always well documented ?
  64. 64. True Or False? All of our Notes applications have formal test plans ?
  65. 65. True Or False? Most of our Notes applications have formal test plans ?
  66. 66. True Or False? Some of our Notes applications have formal test plans (I think)?
  67. 67. True Or False? None of our Notes applications have formal test plans ?
  68. 68. Ineffable? Does it still do what it did before ?
  69. 69. Before And After Testing Write One Set of Tests Compare Results
  70. 70. The Goal Of Testing
  71. 71. Cost Versus Risk <ul><li>Keep throwing more and more tests
  72. 72. Automated tests are faster (cheaper?)
  73. 73. Some tests are better predictors than others
  74. 74. Save all failed tests and re-use </li></ul>
  75. 75. 3 Minutes!!!
  76. 76. In Closing.... “ Sometimes it pays to stay in bed on Monday, rather than spending the rest of the week debugging Monday's code.” ~Dan Salomon
  77. 77. Questions???

×