We tackle the testy topic of automated testing in the life of software projects.
Kenneth & Len are joined by Joshua Lewis from nReality (formerly of the JCSE) about the ins and outs of automated testing. We tear through artificial boundaries to unpack the value of testing, as well as potential pitfalls. There are many different testing tools and styles available, and choosing the right approach can be difficult. We even learned about some new terms, and possibly what we've been calling "testing" should be called "checking", who knew? We learned that Kent Beck, the father of TDD, did in fact "rediscover" TDD from earlier authors who used the same principles with punch cards!
As is common with talks on testing we explore the many techniques we're aware of, sharing lessons learned and try to settle on some heuristics that you could use in your projects. Which methods are the best? You'll have to listen!
Follow Joshua online:
Here are some resources mentioned during the show:
- JCSE at Wits - http://www.jcse.org.za/
- Context Driven Testing - http://c2.com/cgi/wiki?ContextDrivenTesting
- Testing and Checking Redefined - http://www.satisfice.com/blog/archives/856
- Test Pyramid - http://martinfowler.com/bliki/TestPyramid.html
- Why does Kent Beck refer to the "rediscovery" of TDD? - http://bit.ly/1StrUSY
- Test Driven Development - http://www.extremeprogramming.org/rules/testfirst.html
- Why I do TDD - https://joshilewis.wordpress.com/2015/11/25/why-i-do-tdd/
- DStv Digital Media - http://dstvdm.dstv.com/
- Selenium Browser Automation - http://www.seleniumhq.org/
- Appium - http://appium.io/
- Page Object Pattern - http://martinfowler.com/bliki/PageObject.html
- Use "qa" CSS namespace - http://csswizardry.com/2015/03/more-transparent-ui-code-with-namespaces/
- Sunk cost fallacy - https://en.wikipedia.org/wiki/Sunk_costs#Loss_aversion_and_the_sunk_cost_fallacy
- lend-to.me - http://lend-to.me
- lend-to.me (on GitHub) - https://github.com/joshilewis/lending
- lend-to.me eventsourcing experiment - https://github.com/joshilewis/lending/tree/experiment/eventsourcing
- lend-to.me API - https://github.com/joshilewis/lending/wiki/API-Reference
- Given When Then - http://martinfowler.com/bliki/GivenWhenThen.html
- Continuous Integration - http://www.martinfowler.com/articles/continuousIntegration.html
- Testing in Production - http://sdtimes.com/testing-in-production-risk-vs-reward/
- Ansible - https://www.ansible.com/
- Do you smoke test? - https://samsaffron.com/archive/2013/02/22/do-you-smoke-test
- Stripe API (support test/live using different keys) - https://stripe.com/docs/api
- Consumer-Driven Contracts - http://www.martinfowler.com/articles/consumerDrivenContracts.html
- Swagger - http://swagger.io/
Thanks for listening!
See all past picks on our picks page.