Survey:
Who has heard about AST?
How many of you have read or even skimmed a testing book in the last year?
How many of you have read a white paper?
How many of you have written ANY bugs outside of professional obligations (your job, school, etc.)?
Has anyone tried to formally QA an article?
How many of you have heard about the “No Tester” movement?
How many of you have heard about ISO 29119?
Purpose:
My purpose is not to teach you facts about testing, even if some of that happens, but rather to teach you what questions you didn’t know that you should even ask and show you places you didn’t know to look.
NOTE: I know I cite myself several times, and while there are other sources, few are as narrowly focused to the strategies I am going to talk about..
Do you know the different ‘schools’ of testing?
Four Schools of Testing*: www.testingeducation.org/conference/wtst_pettichord_FSofST2.pdf
Analytical School - Code Coverage, Unit Testing
Factory School - Metrics, Traceability
Context-Driven School: Exploratory, Multidisciplinary based upon context
Quality Assurance School: Protect user, Gatekeeper, Process-Oriented
* [Edit: Since this presentation, I have discovered an updated model including a 5th school, Agile. See https://www.prismnet.com/~wazmo/papers/four_schools.pdf)
I’m mostly going to speak from the CDT point of view…
(Aside: While I appreciate CDT’s philosophy, be aware that if you approach the community online, some people participating in CDT’s development tend to be passionate/challenging/aggressive and some are very interested in defining words. Even if you are not interested in that, CDT is still worth looking into, just figure out who you find value from and whom you don't get value from.)
Two of the largest “CDT“ classes:
BBST: http://bbst.info/ ; http://www.testingeducation.org/BBST/ ; http://www.associationforsoftwaretesting.org/training/courses/ ; http://altom.training/bbst-foundations/
RST: http://www.satisfice.com/rst.pdf
(Both have free portions, BBST includes all the lectures for free)
Models and Heuristics:
What are they? Read my work: Words of the Week: Heuristic [& Algorithm]: http://about98percentdone.blogspot.com/2013/10/words-of-week-heuristic-algorithm.html
“A Heuristic is an attempt to create a reasonable solution in a reasonable amount of time. Heuristics are always Algorithmic in that they have a set of steps, even if those steps are not formal.”
List of Heuristic Mnemonics: http://www.qualityperspectives.ca/resources_mnemonics.html
SFDIPOT - Structure, Function, Data, Integrations, Platform, Operations, Time
HICCUPPSF - History, Image, Comparable Product, Claims, User Expectations, Product, Purpose, Standards and Statutes, Familiar Problems
Heuristic Test Strategy Model: http://www.satisfice.com/tools/htsm.pdf
How do you know when you are right? http://about98percentdone.blogspot.com/2013/11/how-do-you-know-when-you-are-right.html
Models:
Session-Based Test Management: http://www.satisfice.com/sbtm/index.shtml
Thread-Based Test Management: http://www.satisfice.com/blog/archives/503
Tours: http://www.developsense.com/blog/2009/04/of-testing-tours-and-dashboards
Books (just a few):
An Introduction to General Systems Thinking: http://www.amazon.com/exec/obidos/ASIN/0932633498
Exploratory Software Testing: Tips, Tricks, Tours, and Techniques to Guide Test Design: http://www.amazon.com/Exploratory-Software-Testing-Tricks-Techniques/dp/0321636414
Lessons Learned in Software Testing: A Context-Driven Approach: http://www.amazon.com/Lessons-Learned-Software-Testing-Context-Driven/dp/0471081124/
Agile Testing: A Practical Guide for Testers and Agile Teams: http://www.amazon.com/Agile-Testing-Practical-Guide-Testers/dp/0321534468/
Self-based learning
Go find a testing job for the weekends like:
http://www.utest.com/
http://sourceforge.net/p/forge/helpwanted/testers/
http://www.guru.com/d/jobs/
http://weekendtesting.com/america
Where are you going?
http://blog.red-gate.com/wp-content/uploads/2014/02/Test-Engineering-Skills-v3.pdf
(Go look at this guy, it is an interesting list of skills)
Experts and active members of the community:
There are different people who have different expertise’s that are worth reading. Not everyone does much automated testing, while other people are more interested in coaching or test design. Look at where your strengths are and find people who will be able to supplement them. Some of these people may in fact oppose my own views, but that too can be valuable. Debate helps you understand your own point of view. Here is an example or two….
James Bach* – Testing is an Intellectual Inquiry
James Christie* — Consultant, Professional Auditor and Tester, Started entire ISO 29119 discussion
Jon Bach* — Session-Based Test Management (with his brother)
Michael Bolton — Testing vs Checking
Huib Schoots — Dutch Testing Coach
Scott Barber — Load Test Guru
Rex Black — Proponent of Factory School of Testing***
Harry Robinson — Model Based Testing
Justin Rohrman* — Active in community, board member of AST
Robert Sabourin** — Author of I Am Bug (pictures by his 12 year old daughter)
Jerry Weinberg — Systems thinking, consulting, author
Karen N. Johnson* – Professional Tester’s Manifesto
Fiona Charles* — Author, Speaker
Matt Heusser* — Founder of Miagi-Do
Cem Kaner — Originator of CDT, BBST, Legal concerns around testing
Alan Page — (Former?) Microsoft Test Architect
* I met these folks at CAST, and you too can meet these sorts of folks at CAST.
** I met Rob at WHOSE, I enjoyed his writing at WHOSE but he tends to be more academic in my experience.
*** [edit: Since publication my understand of Rex Black's ideas has evolved. Rex specifically rejects the concept of Schools and, as best I understand would prefer I say he's a Proponent of the Strategy of Factory Style Testing in some contexts. I leave the original work as stands for historical reasons.]
*** [edit: Since publication my understand of Rex Black's ideas has evolved. Rex specifically rejects the concept of Schools and, as best I understand would prefer I say he's a Proponent of the Strategy of Factory Style Testing in some contexts. I leave the original work as stands for historical reasons.]
(Some of these people are accessible to talk with, some only speak through their work, some through conferences…)
Doug Hoffman
http://www.softwarequalitymethods.com/h-papers.html
(pay attention to the dates of the papers, some have updated versions)
He has written exhaustively around automation and testing. While that isn’t the only work he’s done, you will get a good idea of the depths you can go in with automation. On the other hand, if you want to learn to code, Doug is probably not the man to visit. He’s interested in theory behind automation. He was one of the minds behind the ideas High Volume Test Automation and Exploratory Automation.
I wouldn’t go to Doug to find out the latest idea behind Selenium. I would go look at Doug’s work to understand what sort of automation techniques might make sense to apply to a problem.
Questions you need to ask (that I can’t answer):
How much time am I willing to dedicate to learning?
What sort of things do I want to learn?
How varied do I like my studying?
Is this a job or a profession?
Do you want to do something that matters?
Are you okay with having 10 years of experience that really only add up to 1 year of valuable experience?
Questions you need to ask (that I can give hints on):
Where can I learn?
- Blogs
- BBST/RST and other classes (LST is another CDT class, RBCS is from the factory school)
- Books
- Co-workers (particularly challenges)
- Conferences (CAST - https://www.youtube.com/playlist?list=PLQB4l9iafcelXpJnK6IyDsoFeEb1icqrl , Code Camp, Star West, Star East, Agile testing days, GTAC - https://developers.google.com/google-test-automation-conference/2014/stream , etc. ; Often recorded on Youtube)
- White papers: http://about98percentdone.blogspot.com/2015/01/white-papers-and-who-owns-your-education.html
What should I learn?
- Start by glancing at the foundations class. See how much of it you know already.
- Read blogs about what interests you.
- Look up the people I talked about (I suggest Googling "<Name> Testing”. Almost all of them have blogs).
- Look at the top blogs and see what they have to say: http://www.testbuffet.com/lists/top_114_software_testing_blogs_2014/page/1/
- If those methods don’t work, try looking at the fire hose and see if there is an interesting topic: http://www.testingreferences.com/testingnews.php
- Start your own blog and learn to write; here is mine: http://about98percentdone.blogspot.com
- Feeling shy? Why not start by writing comments.
- Pick up one book. Read it. Don’t like the ones I listed? Check out this extensive list: http://www.testingreferences.com/software_testing_bookstore.php
- Write a review on your blog
- QA a news article. Write up bugs on failed assumptions.
- http://about98percentdone.blogspot.com/2013/09/testing-babies-for-learning.html
- http://about98percentdone.blogspot.com/2013/09/testing-babies-for-learning.html
Learn about your interests AND figure out how much you are gaining. If your energy wanes, move to a different topic or take a break.
What else can I do?
- Figure out what matters and work on that: http://about98percentdone.blogspot.com/2014/10/noise-to-signal-attempt-to.html
- Don’t keep working in the same position for too long. Changing jobs is healthy.
- If you aren’t much of a reader, but rather audio or video, try some of these: https://flowoftesting.wordpress.com/2014/09/02/podcasts-and-videos-for-testers/
- Learn from the history of testing: http://www.testingreferences.com/testinghistory.php
- Find some heroes and some villains and learn from them (villains will help you clarify your own views): http://about98percentdone.blogspot.com/2014/01/heroes-and-villains.html
Have fun. If this doesn’t sound fun at all, go find something that does, even if it is a different career.