Writing tests is one of the best ways to guarantee quality software, prevent bugs, and produce clean and scalable code; yet many developers still don’t include tests with their code. Why?
- “I don’t know how.”
- "Writing tests is too hard."
- “I don’t have time.”
- “I don’t know what to test.”
- “This code is too simple to need tests.”
What you'll learn
This training will address these common excuses and misconceptions, by presenting the actual value of employing test-driven development methodologies within your software development life cycle. Topics we'll cover include:
- Introduce basic software testing principles.
- Provide hands-on experience writing and running the following kinds of tests for Drupal-based systems:
- Unit tests (using PHPUnit)
- Integration/Kernel tests (using PHPUnit)
- System/Browser tests (using PHPUnit and Nightwatch.js
- Acceptance tests (using Behat
- Demonstrate using continuous integration to automate test running.
Prerequisites
- Basic understanding of object-oriented development (preferably in the context of PHP and/or Drupal)
- A laptop with the latest version of ddev installed.
- An account on github.com (optional)
Instructor
David Stinemetze
Software Developer V at Rackspace
Sponsored by:
David has over a decade of Drupal experience and is a maintainer for several Drupal modules, including Akamai, dataLayer, Web Page Archive, Performance Budget, and Accessibility Scanner. He is also an organizer of the San Antonio Drupal User Group.
When he's not writing code, he can be found playing one of his many musical instruments, enjoying a football game with friends or having exciting adventures with his four-year-old daughter.