What key skills regularly help you tackle testing tasks?

When you’re faced with different testing challenges, which skills do you rely on most? Here are some scenarios to explore: which skills do you think are essential?

  • Investigating a bug report: A customer reports a bug with a login feature, but the steps to reproduce the issue are unclear. What skills help you figure it out?
  • Collaborating on a new feature: You’re in a meeting with developers and the product manager, discussing a new feature. What helps you ask the right questions and think about potential risks?
  • Conducting exploratory testing: You’re asked to explore a new release for issues not covered by test cases. What skills help you decide what to test and where to look for problems?
  • Prioritising bugs for a release: There are multiple bugs, but not all can be fixed before release. What skills help you determine which ones to prioritise?

We’re curious to know:

  • Which skills or traits do you find most valuable for completing these tasks?
  • And do you have any tips on developing these skills to help others in the community?

Prioritising bugs for a release

Background- the current team I work in is lean (2 developers/1 BA/1 Tester/1 Product Owner) so as a result- we are very collaborative within our internal team, and also our stakeholders.

Communication - communicating to the Product Owner/ team so they can understand the reason why the bugs have been prioritised in a certain order. This can be at daily standups and/or reporting.
This also needs to be communicated to the stakeholder in language they can understand - esp if the bug is time critical and is impacting a large amount of users.

Attention to detail- knowing what conditions to replicate the bug, so you’re not holding up the process to make the decision. i.e. I get the conditions incorrect the first time, then having to redo the test again with changes, which then delays the before making a decision on which bugs go in before release. Time management also factors in here!

Collaboration - I often collab with our BA/Developers when assessing bugs, as they can give me another “pair of eyes” on the task, and give feedback on something I may have missed.

Can’t think of any tips at the moment!

Nice question @sarahdeery ,
Here is my response below :blush:

Investigating a bug report:
Investigating bugs involves analyzing error logs, network properties, and the console.

Collaborating on a new feature:
Start by briefly discussing whether the story is a priority. If it is, the next step is to finalize the acceptance criteria with the BAs.

Conducting exploratory testing:
Exploratory testing requires a combination of skills such as critical thinking, domain knowledge, and risk assessment.

Prioritizing bugs for a release:
Yes, we prioritize critical functionality bugs to ensure the most impactful issues are addressed.

Which skills or traits do you find most valuable for completing these tasks?
Time management is essential to add test cases and complete the ticket while covering as many scenarios as possible. Continuous daily testing helps ensure the application remains stable.

Do you have any tips on developing these skills to help others in the community?
Never lose hope in spotting bugs. It can be challenging at times, but always keep in mind that finding bugs and identifying loopholes is a critical part of the process.

Cheers,
Ramanan

I would start by understanding the scope of the project because, without understanding, there won’t be clarity on what needs to be tested and what doesn’t; otherwise, it will be difficult for me to develop any strategy or any documentation.

So far I have worked on agile projects in which there is the possibility that requirements may change at the very last moment and at that moment analyze the impact of change and then again inform the stakeholders about the possible implications and whether to include the new functionality or not makes the release complicated.

The other benefit of having clarity with the requirement is that it helps in all sorts of testing including exploratory testing. If we are not clear on what we need to explore, then there is a chance that exploratory testing won’t be effective.

Apart from developers and product managers, peer discussion also helps, sometimes a different person’s perspective on the same functionality helps in realizing edge cases that might have been missed if we were testing based on the only thought processes.

Prioritization of not only bugs but also tasks and most importantly prioritizing testing over anything else. Because being testing prioritizing testing as top most task is very crucial.

Scenario 1: Investigating a Bug Report

Skills / Traits: Problem-Solving, Attention to Detail, Inquisitiveness, Time Management and Organisation, Spotting Patterns, Analytical skills

Explanation: For this scenario I’ve focused in on the need to analyse the issue. It will need you to see patterns in logs or behaviours, focus on details and also have an inquisitive aspect to investigate the issue. Once done, you’ll need that attention to detail (as well as communication) to provide the updated bug report. I also called out time management and organisation as it can be easy to sink lots of time into an investigation so being aware of the time spent is important. Do you need to stop and rethink or get help?

Scenario 2: Collaborating on a New Feature

Skills / Traits: Critical Thinking, Inquisitiveness, Attention to Detail, Communication, Collaboration

Explanation: Communication and collaboration are essential here. Critical thinking and Inquisitiveness will help us identify those unexpected edge cases, potential risks and flaws within the requirements. Understanding the details can also be very important as any misunderstandings in requirements can have significant negative impacts.

Scenario 3: Conducting Exploratory Testing

Skills / Traits: Inquisitiveness, Attention to Detail, Critical Thinking, Problem-Solving, Time Management and Organisation, Spotting Patterns

Explanation: To effectively exploratory test we need the inquisitivenesss and critical thinking required to think of interesting ideas and scenarios as well as an attention to detail, looking at the behaviours ongoing and importantly writing them down! Finally time management is important to avoid spending an entire day on a low priority area or disappearing down a rabbit hole when there are other areas of risk still to be considered.

Scenario 4: Prioritising Bugs for a Release

Skills / Traits: Critical Thinking, Collaboration, Communication, Analytical skills

Explanation: The ability to think about the issue, collaborate and ask meaningful questions will help the group determine the priorities as well as leveraging your own analytical mind.

Task: Assess the following scenarios, map the skills to the tasks, and share tips on how to develop these skills if you can.

  • Scenario 1: Investigating a Bug Report

    • Skills/Traits: Inquisitiveness, Critical thinking, Attention to detail, spotting patterns

    • Explanation: When working with incomplete bug reports, it’s easy to be frustrated by what you don’t have: missing steps, cropped screenshots, or vague explanations. Being inquisitive, you can begin with what you do have. What hints are in the existing bug report that you can start from? If there is a screenshot or a video, watch it for tiny actions the user is making that could help you understand what issue they are facing. Can you figure out which browser they are using? Sometimes, even the machine they are using can help you figure out the issue. Windows users are notorious for double-clicking, while Mac users are typically single-click people (this uses your pattern-spotting skill).

    • Tips: Develop a great relationship with your customer experience team. If they see you as an ally, you can ask questions that they can redirect to the client. Get familiar with different user behaviors (like the difference between Mac and Windows users). And, above all else, get curious. If you have the end result (User cannot log in), approach the login page with the result in mind and try to find any way that you can to achieve the same result

  • Scenario 2: Collaborating on a New Feature

    • Skills/Traits: Analytical Skills, Critical Thinking, Collaboration, Adaptability, Communication, Empathy

    • Explanation: Empathy was added as a skill here because when developing a new feature, in my mind, QA can approach the feature from a new user’s perspective. Does the design make sense? The functionality? If I am attempting to complete a task, does the UI give me clear directions on how to achieve what it’s promising that I can do? I can use empathy, analytical skills, and critical thinking when approaching development from this mindset. Then, being able to communicate my thoughts respectfully is crucial. Asking questions when I am confused gives the team a chance to rethink what’s been developed so far. And, I may think I see a better way, but due to time constraints, I may need to let go of what I think would be helpful. This is where adaptability comes in. I work with the team, communicating what seems valuable to me, then agreeing on what’s possible so that we can move forward with development.

    • Tips: When collaborating with others, approach people with the belief that everyone is working hard and wants to do their best work. You are not there to belittle what’s already been done or to merely “poke holes”. You are there to see where potential value might be missed, be willing to communicate that, and help bring to life what the team is working on together.

  • Scenario 3: Conducting Exploratory Testing

    • Skills/Traits: Inquisitiveness, Time Management and Organisation, Spotting patterns, Communication, and Attention to detail

    • Explanation: When approaching functionality that hasn’t been tested yet, Exploratory Testing is a great way to approach this. First, gather your tools (this helps with Organisation). Be ready to document your findings as well as write test cases that can track what is working from a pass/fail rate. Know which browsers your development team supports, and try to view as a first-time user. Are the pages responsive? What is the first thing you are tempted to do when you see the page? If you don’t automatically want to follow the happy path, why is that? Be ready to communicate that to your team (communication). Do the elements match up with existing elements in other parts of the application (spotting patterns)? If you know how to break a particular part of the application in one way, can do break it in the new functionality you are testing? Be as inquisitive as possible and be willing to look at with with new eyes, over and over. At some point, though, you will reach a point where you won’t know to break it. This is good! That means you have reached your limits and you are ready to see how other users could possibly break it (Time Management). Write up your reports and share what test cases you’ve created, which passed, which failed, and how reliable you feel about the application if it were released today.

    • Tips: Get your tools together. Have a test case management system ready. Know how to communicate your findings. Be able to share the number of test cases that are passing or failing. Be willing to “sleep on it” if you’ve spent the day on exploratory testing. Looking at it again with fresh eyes the next day can sometimes provide a whole new perspective, or you might have the ability to spot something you missed the day before because you spent so long looking at it.

  • Scenario 4: Prioritising Bugs for a Release

    • Skills/Traits: Critical Thinking, Collaboration, Communication, Adaptability

    • Explanation: Not everything will come out as squeaky clean as we like before releasing it to production. This is where trust in the team comes in (collaboration). It is our job to communicate what the current risk of releasing looks like. Having an existing list of issues that the team can work through and determine priority will help foster trust. Leaning on adaptability, the team may make a decision that I am not a fan of. That’s fine as long as the team made the decision. Based on user feedback, the team can come back together and decide which steps to take. Being willing to view functionality from the user’s point of view and determine what is high priority is not only the QA’s job. It’s everyone’s job to decide how they want their work to display for the world.

    • Tips: Communicate the risks. Provide educated information for the team to decide how they want to spend their time, either before or after a release. Then, let things happen. Hopefully, you are not in an environment where the team is the scapegoat. If this happens, be very clear in communicating that you shared your findings with the team and that the decisions made were a team decision. Being able to trust each other and own quality together is what makes a good team great.

Investigating a bug report:
skills: Attention to detail, communication, Problem solving
Explanation: The initial statement you are given a problem you need to understand and be able to solve. Using attention to details whilst testing to identify the steps to recreate and clearly communicating these to the wider team to help them resolve the issue.

Collaborating on a new feature:
Skills:
Inquisitiveness, Critical thinking, communication and collaboration**
Explanation:** Using your inquisitiveness to gain as full an understanding of the feature as you can whilst using critical thinking to assess possible risks associated with the new feature and create test scenarios. Using communication skills to listen to others and ask meaningful questions which will help gain the knowledge needed. Collaborating with others to make the process as robust as possible.

Tip: In this case I think communication is just as much listening as it is talking and articulating your point

Conducting exploratory testing:
Skills:
Inquisitiveness, Attention to detail, Communication and adaptability**
Explanation:** You need to understand what is currently being covered in testing and be inquisitive to take this further. Using attention detail to identifying when this then identifies bugs so that you can clearly communication the steps to recreate new issues identified. Showing your adaptability to go outside of the current testing scope**

Prioritising bugs for a release:
Skills:** Problem solving, time management and organisation, analytical skills, communication**
Explanation:** Using time management to understand what can be fixed and retestedahead of the next release. Reviewing the bugs with an analytical mind to see if these bugs can be grouped together to save time in fixing them and working out the priority in which they need to be fixed. Using problem solving skills to adjust priorities where needed and communicating clearly the plan for what is being fixed and when

getting enough sleep?

No seriously, problem solving all week long is pretty intensive stuff, take regular fresh air breaks. But mostly do not get frustrated when the testing task keeps on blowing up in your face as the complexity starts to grow. It always comes down to resource management some how.