Test Automation for the Non-Technical Tester: Understanding Its Value

Test Automation for the Non-Technical Tester: Understanding Its Value

Presentation by Shalini Chaudhari, Plenary Keynote Speaker @STC 2012.

Presentation Abstract

Non--technical testers (those who don't have any software development or automation skills) are sometimes intimidated by automated tests. They don't understand the principles of automation or it's goals, and many times they're fearful automation will put them out of a job.

This paper is meant to turn that intimidation around into an appreciation the advantages automation brings to a project. It also exposes testers to the value of automation in freeing testers from repetitive tasks, and empowering them to use their tremendous skills and experience in more valuable areas of testing.

Readers of this paper will learn definitions of unit, integration, and functional tests. You'll also see examples of tests, and also discover what concepts like continuous integration mean, and how they dramatically impact a project's ability to deliver tremendously high quality. You'll learn why a mix of automated tests is critical to shipping high-­-quality software. Readers also learn why automation is not the SOLE piece of the testing puzzle, and why manual testing is still extraordinarily important! You'll discover how pairing with developers to provide feedback can result in dramatically improved test coverage - even though you don't know how to write code.

You'll learn a bit about different automated test types, and you'll also see how several different tools, frameworks, and APIs are used.

Readers will gain a better understanding of how their testing expertise can add to the project's overall quality, even in the mysterious realm of test automation!

Key Take Aways

• Non-technical testers don't write software, but have important skills and knowledge to contribute to the team.
• Non-technical testers should be pairing and collaborating throughout a feature's entire cycle to ensure the feature is clear and that good testing criteria are laid out for the entire team.
• Understanding the three major types of automated tests (unit, integration, and functional) is critical.
• Non-technical testers can benefit by understanding a bit of the details behind how automated tests are written, executed, and maintained.

About Jim Holmes

Jim Holmes , is the Test Studio Evangelist at Telerik. He has over 25 years in the IT field in positions including PC technician, WAN manager, customer relations manager, developer, and tester. Jim has worked in the US Air Force, DOD, software consulting domain, and commercial software products. He's a long-time advocate of test automation and has delivered software on a wide range of platforms. He co-authored Windows Developer Power Tools and blogs at http://FrazzledDad.com. Jim is the President of the Board of Directors for the CodeMash conference held in the middle of winter at an indoor waterpark in Sandusky, Ohio.

Transcript

  1. Test Automation for the Non- Technical Tester Understanding Automation’s Value

  2. Jim Holmes @aJimHolmes Jim.Holmes@Telerik.com http://FrazzledDad.com http://bit.ly/JimAtTestStudio

  3. “Scripted manual tests are immoral” -- Robert “Uncle Bob” Martin,

    NYC BDD Exchange conference, 1 Oct 2012 (@gojkoadzic http://bit.ly/11Vbm8t)
  4. None
  5. Medical Devices

  6. Mindless repetition of scripts? Poor value for company

  7. Automation frees testers to do higher value work

  8. Exploratory Testing: Use testers’ skills and knowledge

  9. Why do testers avoid automation?

  10. Fear, Uncertainty, Doubt (FUD)

  11. “Automation is going to take away my job!”

  12. “I don’t know how to write code!”

  13. “There’s too much to learn!”

  14. “If you dislike change, you’ll dislike obsolescence even more” --

    General Eric Shinseki, Chairman, US Joint Chiefs of Staff
  15. Don’t fear automation, learn where you can use it to

    add more value
  16. Automation “checks” software, People “test” software -- Michael Bolton, 2009

  17. Automated tests “check” for regressions...

  18. They’re fast, repeatable, and specific

  19. Automation can give rapid feedback

  20. ...but there’s much they can’t see

  21. Types of automation

  22. Unit Tests

  23. Integration Tests

  24. Functional (UI) Tests

  25. Performance/Load, Security

  26. Testing Pyramid -- Permission from Lisa Crispin

  27. HOW automation is used

  28. Unit Tests Run locally (constantly!) by developers

  29. All Types Regularly or scheduled on build/testing server

  30. Where can testers collaborate with developers on automated tests?

  31. Developers write “shallow” or “Happy Path” tests

  32. Testers bring different views to project

  33. Testers help extend coverage of automated tests (But focus on

    valuable tests!)
  34. Automation is only part of an overall quality approach

  35. “Testing is dead”

  36. No, it’s not -- but it is dramatically changing!

  37. Developer/Tester collaboration is critical for a project’s success

  38. Whole Team Approach

  39. Testers are pessimists and look for negative testing

  40. Automation shouldn’t be feared

  41. Automation checks, good testers test

  42. Automation brings more value to the customer

  43. Automation frees testers to be creative and use their skills

  44. Jim Holmes @aJimHolmes Jim.Holmes@Telerik.com http://FrazzledDad.com http://bit.ly/JimAtTestStudio