Automated software testing is considered critical for software development organizations. It can save time by performing repetitive but necessary tasks, which are already in place, or some testing that is difficult to perform manually. It saves money as well because a time savings means cost savings. Automated testing can also improve accuracy performing the same steps precisely every time it is executed. More importantly, it can find defects in early stages so that we can quickly respond to them.
In this talk, we first discuss our practical experience on using automated testing in our project. We present our process and tools to make test automation possible. Lastly, we discuss 7 deadly sins of automated testing.
6. What is Agile Testing?
“Agile testing involves all members of a cross-functional
Agile team, with special expertise contributed by testers, to
ensure delivering the business value desired by the customer
at frequent intervals, working at a sustainable pace.”
-- Wikipedia
16. Benefits
● Test faster
● Consistency
● Able to run over and over again with less
overhead (save time and money)
● Improve accuracy, less human error
● Increase test coverage
18. Automated Testing Tools We Use
● Continuous Integration (CI)
○ Buildbot
● Unit Test
○ PHPUnit with WordPress Unit Tests http://core.
trac.wordpress.org/browser/tests
● Functional Test
○ Selenium + Lettuce
26. Current Problems We Found
● Test scripts are too fast.
○ No problem for PHPUnit
○ Big problem for Selenium + Lettuce
● Language we use in the features are too
low level.
● Higher level language would cause a lot of
duplicated and complicated steps.
28. Sins of Automated Testing
● Flawed comparison between manual test
and automation
● Loving the UI so much that all tests are
executed through the UI
● Too lazy to maintain automated tests