Every tester will spend considerable amount of time dealing with technical matters. Why does a system fail? How can that bug be re-produced? Which automated tools are right for the job? These are the type of questions that can make or break a project.
However, not every tester will stop to think about the profession’s more abstract matters, like ethics for instance. What role should I fill within my organization? What promises (if any) should I make with regard to quality? These are the type of questions that can make or break a career.
So how can you tell if you’re an ethical tester? One way would be to write out a list of ethics and follow them. If you haven’t done that yet, then perhaps you could start by look at those of testing guru James Bach, who dealt with the subject of ethics in testing this past summer. Take a look:
- Know what a test is. Avoid labeling an activity as a “test” unless it represents a sincere effort to discover a problem in a product.
- Maintain a reasonable impartiality. The purpose of testing is to cast light on the status of the product and its context, in the service of my clients. I may play multiple roles on a project, but my purpose, insofar as I am a tester, is not to design or improve the product.
- Do not claim to assure, ensure, or control quality. I don’t control anything about the product: a tester is a witness. In that capacity, I strive to assist the quality creation process.
- Report everything that I believe, in good faith, to be a threat to the product or to the user thereof, according to my understanding of the best interests of my client and the public good.
- Apply test methods that are appropriate to the level of risk in the product and the context of the project.
- Alert my clients to anything that may impair my ability to test.
- Recuse myself from any project if I feel unable to give reasonable and workman-like effort.
- Make my clients aware, with alacrity, of any mistake I have made which may require expensive or disruptive correction.
- Do not accede to requests by my client to work in a wasteful, dangerous, or deceptive way. (e.g. I will not keep test case metrics, because they are damaging in almost any context)
- If I do not understand or accept my mission, it shall be my urgent priority to discover it or renegotiate it.
- Do not deceive my clients about my work, nor help others to perpetrate deception.
- Do not accept tasks for which I am not reasonably prepared or possess sufficient competence to perform, unless I am under the direction and supervision of someone who can guide me.
- Study my craft. Be alert to better solutions and better ways of working.
What do you think of this list? Are there ethical criteria that you would add? Share your thoughts in the comment section below.