CH01. L05. The Psychology of Testing
Summary
TLDRThis video script explores the distinct mindset of testers compared to developers, emphasizing the importance of independent testing at various levels, from in-house to external. It addresses common misconceptions about testing and highlights the value in identifying defects to save time, money, and reputation. The script also underscores the need for constructive communication skills among testers to foster a cooperative environment and improve the overall development process.
Takeaways
- 🤔 The mindset of a tester differs from that of a developer, emphasizing the importance of distinct perspectives during the software development lifecycle.
- 🔍 Testing should ideally be conducted by someone other than the developer to ensure unbiased identification of defects and failures.
- 🔄 There are varying levels of dependency in testing, ranging from the developer testing their own code to external bodies or outsourced testers.
- 👥 Effective communication is crucial between testers and other team members, including analysts, designers, and developers.
- 🚫 Misconceptions about testing, such as it being a destructive activity, should be addressed to foster a positive team dynamic.
- 💡 Testers possess unique skills like curiosity, professional pessimism, and attention to detail, which are essential for thorough testing.
- 🛠️ Finding defects during testing saves time and money that could be lost if the product were released with issues.
- 🛡️ Discovering defects improves the product's quality and reduces risks to its reputation.
- 💼 Testers contribute to the enhancement of developers' skills by identifying mistakes that can be learned from.
- 🤝 Personal skills for constructive communication are vital for testers to maintain positive relationships within the team.
- 📋 Test results should be communicated in a neutral, non-accusatory manner to ensure they are constructive and beneficial to the team.
Q & A
Why is it important for testing to be done by someone other than the developer?
-Testing should be done by someone other than the developer to ensure an unbiased perspective. This separation helps the developer focus on creating the software, while the tester can find defects and failures more objectively.
What are the different levels of dependency on a different person in testing?
-The levels range from the developer testing their own code (least independent) to having an external company or outsourced tester (most independent). This helps in maintaining objectivity and thoroughness in the testing process.
Why is independent testing beneficial for software development?
-Independent testing allows for a more critical and unbiased examination of the software. It helps in identifying defects and failures that the original developer might overlook, thus improving the quality of the final product.
At what levels of testing can independent testing be executed?
-Independent testing can be executed at any level of testing, including unit testing, integration testing, system testing, and acceptance testing.
What are some misconceptions about testing and testers?
-Some common misconceptions include the belief that testers are always delivering bad news, finding defects that criticize the product and the developer, and that testing is a destructive activity.
How can testers avoid negative perceptions from others in the team?
-Testers can avoid negative perceptions by communicating in a constructive way, focusing on the benefits of finding defects early, and emphasizing the role of testing in improving the product and the developer's skills.
What are some key skills required for a tester?
-Key skills for a tester include curiosity, professional pessimism, a critical eye, attention to detail, and the ability to predict potential errors based on past experiences.
How can defects found during testing save time and money?
-Finding defects during testing can save time and money by preventing the release of a faulty product. It also reduces the risks associated with product failure and damage to the product's reputation.
What are some personal skills that testers should have for effective communication?
-Testers should have personal skills such as believing in cooperation over conflict, understanding others' feelings and reactions, ensuring mutual understanding in communication, and presenting test results in a neutral and constructive manner.
How should the results of the testing process be communicated to the team?
-The results of the testing process should be communicated to the whole team in a neutral and constructive way, without criticizing or accusing anyone. The focus should be on how the findings can help the team improve the product.
What is the importance of revising the content of the testing process?
-Revising the content of the testing process in a text form is important for better comprehension and clarity. It helps in ensuring that all team members understand the testing process and its outcomes.
Outlines
🤖 The Duality of Minds: Developer vs. Tester
This paragraph discusses the distinction between the mindset of a developer and a tester during software development and testing. It emphasizes the importance of independent testing, suggesting that a tester who is not the developer can be more effective. The paragraph outlines different levels of testing independence, from the developer testing their own code to external audits by a different company or outsourced professionals. It also touches on the benefits of separating the roles of development and testing, such as improved focus and defect detection.
🗣️ Communication Strategies in Software Testing
The second paragraph focuses on the communication between testers and other team members, including analysts, designers, and developers. It addresses common misconceptions about testing and testers, portraying them as bearers of bad news. The paragraph suggests that constructive communication can alleviate negative perceptions and improve collaboration. It highlights the unique skills required for effective testing, such as curiosity and attention to detail, and argues that finding defects is beneficial for saving time, money, and improving the product's reputation. The paragraph concludes with personal communication tips for testers to foster a cooperative environment and present test results in a neutral, constructive manner.
Mindmap
Keywords
💡Testing Process
💡Developer's Mind
💡Tester's Mind
💡Dependency Levels
💡Independent Testing
💡Communication
💡Misconceptions
💡Constructive Communication
💡Personal Skills
💡Cooperation
💡Critical Eye
Highlights
The mindset of testers differs from that of developers during the software development process.
Testing should not solely depend on the developer due to the distinct thinking processes involved.
Different levels of dependency on a separate tester can be identified in the testing process.
Developers can still test their own code, but assigning testing to a different tester can lead to better focus and defect detection.
Independent testing can be applied at various testing levels, including unit, integration, system, and acceptance tests.
There are four levels of independence in testing, ranging from the developer testing their own code to external certification.
The first level of testing independence is the developer testing their own code.
The second level involves another team member from the development team conducting the testing.
The third level of independence is when someone from a different group or department within the same company tests the code.
The fourth level of independence is achieved when an external entity, such as a different company or an outsourced tester, performs the testing.
Communication between testers and other team members, including analysts, designers, and developers, is crucial.
Misconceptions about testing and testers need to be addressed to foster better team communication.
Testers are often viewed as bearers of bad news, which can create negative perceptions within the team.
Constructive communication can help mitigate negative feelings between testers and other team members.
Testers possess unique skills such as curiosity, professional pessimism, a critical eye, and attention to detail.
Finding defects during testing saves time and money that could be lost if the product was launched with defects.
Discovering defects also reduces risks and improves the developer's skills by identifying their own mistakes.
Testers and test leaders should have personal skills for constructive communication with the team.
Cooperation is emphasized over conflict in the communication process between testers and the team.
Understanding the feelings and reactions of others is key to effective communication.
Ensuring mutual understanding between the tester and the team is crucial for clear communication.
Test results should be presented to the team in a neutral, non-accusatory manner to promote constructive feedback.
Personalizing problems should be avoided to maintain a constructive approach to testing feedback.
Revising the content of the video into a text form is recommended for better comprehension.
Transcripts
The tester's mind during the testing process is different
in the way of thinking from the developer's mind while developing the software.
As there is a difference between them,
we will clarify it in this video.
why should testing depend on a person who is not the developer?
what are the levels of dependency on a different person
in testing. Also, as there is a difference between them,
we will learn and remember some
communication tips with rest of the team.
Although any developer is capable of test his own code,
but separating this task and assigning it to a different tester
is better. Because it will help him more
to focus his efforts during testing and
the tester can find defects and failures.
The independent testing can be executed at any level of testing,
whether unit testing , integration, system
or acceptance test. There are levels of independence,
which can be arranged from the least to the most accurate
as follows:
The first level : The one who wrote the code is the one to test it.
The second level : The one who will test it is another one
but still from the developers team. The third level:
Another one will test but he is from a different group or department in the same company.
The fourth level : The one who test the code is
from a different company or he may be an outsource
or certification by an external body.
Let's move to the second section which is
about the communication between the tester and the rest of the team, like:
analysts, designers and developers.
In the beginning, we need to know the misconceptions about testing and tester
in the view of others.
It's known about him that he is the person who always has bad news
who find defects in our work,
in which we did our best and when they
find defects or failures in a product, this means
that we criticize the product and the developer
who wrote its code. Therefore,
testing is seen as a destructive activity.
we can avoid all the bad feelings
between testers and others by communicating
in a constructive way.
We shall start the constructive communication
with some information which you should
transfer and correct to those who you work with.
The process of finding failures in a system requires
some different skills, which is done by the tester.
Some of them are: curiosity, professional pessimism,
a critical eye, attention to detail.
In addition to his experience in
adding his own error guessing before starting testing.
this results from repeating the testing process
to different projects, and expecting which
modules or layers that have defects in
a system like that. Secondly,
the defects we find during testing will save a lot of time
and money that we may lose later on
if this product was launched with its defects. it will also
reduce the risks which may face the product and its reputation.
The defects we find, will improve
the developer's skills, as he will discover
his own mistakes which will improve his skills later.
After those three facts about testing, we also,
as testers or test leaders, should have
personal skills to communicate with others
in constructive way.
These are some ways we will remember
during communication.
1. Believe in the concept of cooperation is better than war.
2. Give yourself a chance to understand
how the other person feels and reasons of his reaction.
3. Be sure that the other person
has understood my words correctly
and you also have understood his.
4. The results of testing process should be submitted to
the whole team in a neutral way without criticizing any one,
or accusing anyone of the team to have a problem.
They should be presented in a constructive way that
can help the whole team. i.e. we don't
personalize the problem. By the end of this video,
remember that it's important to revise the content
we've summarized in a text form, to be more comprehended.
this part you can find in a file named
The Psychology of Testing.
関連動画をさらに表示
CH05. L01. Test-organization
ISTQB FOUNDATION 4.0 | Tutorial 2 | 1.1 What is Testing | ISTQB Foundation Tutorials | TM SQUARE
ISTQB FOUNDATION 4.0 | Tutorial 7 | 1.5 Essentials Skills and Practices in Testing (Part-1) | CTFL
CH04. L02. Experience-based Techniques
ISTQB FOUNDATION 4.0 | Tutorial 23 | Static Testing Basics | Reviews & Static Analysis | CTFL
ISTQB FOUNDATION 4.0 | Tutorial 3 | 1.2 Why Testing is Necessary | ISTQB Tutorials | TM SQUARE
5.0 / 5 (0 votes)