$30 off During Our Annual Pro Sale. View Details »

Live Testing a Legacy App

Live Testing a Legacy App

Used in combination with https://github.com/elpete/testing-legacy-cfml

This presentation goes through the basics of the different types of testing and then explores Selenium testing with TestBox as the first step to testing a legacy application.

Eric Peterson

June 16, 2016
Tweet

More Decks by Eric Peterson

Other Decks in Programming

Transcript

  1. WHAT THIS TALK ISN'T ! > About TDD > Framework

    Specific > For testing veterans
  2. WHAT THIS TALK IS ! > An introduction to testing

    jargon > A collection of techniques for starting to test your app > Introduction to Selenium and TestBox > Asking tough questions as well as giving answers
  3. OTHER SESSIONS RIGHT NOW > Lucee Panel Discussion — Room

    235 > Writing Highly Organized CSS — Room 238 > Ouch, It Hurst When Do That. A Tale Of Landmines And Self-Inflicted Wounds — Room 321 > Getting Started With Build Tools — Auditorium
  4. WHAT KIND OF THINGS MAKE AN APP A LEGACY APP?

    > No framework > Few or no tests > Old or incorrect design decisions > New or changed business requirements
  5. TYPES OF TESTING > Unit Tests > Integrated Tests >

    Functional Tests > Application Tests > End-to-end Tests
  6. TYPES OF TESTING (CONTINUED...) > Regression Tests > Acceptance Tests

    > Performance Tests > Accessibility Tests > Compatibility Tests
  7. MY LEGACY APP TESTING PHILOSOPHY* (* SUBJECT TO CONSTANT CHANGE

    !) > Don't stress about the kinds of tests you are writing. Slow tests are better than no tests > Utilize Continuous Integration to offset this > Split your tests up and create multiple runners to help as well.
  8. MY TESTING PHILOSOPHY TEST WHAT MAKES SENSE (AND WHAT SAVES

    YOU MONEY) SOME EXAMPLES: > It broke before > We test it manually every time > The logic is kind of hard to follow (for the next time
  9. MY TESTING PHILOSOPHY TDD > Helps you design the class

    one piece at a time (not focused on in this talk) > Pair programming (one writes the test, the other writes the code to make the test pass)