5 Ways to Improve Your Testing Skills

There is a huge demand for Software Testers in today’s booming IT Industry. Here are 5 simple steps that are sure to help you improve your testing skills and advance your career.

Introduction

Behind every great software delivered is an equally great testing team. Once a product reaches a certain point in its development the developers must hand it over to the testing team to see if it works (or doesn’t work).

Testing plays an important role not only in the development of new products but also in maintenance of the products.

 Kaner, Bach, Pettichord

Testers don’t like to break things; they like to dispel the illusion that things work.

Software testing is challenging. You have to keep yourself updated with the latest in technology, domain knowledge and you also need to provide inputs to make your products better. It doesn’t help that testing is a end of life-cycle process – any slippage on upfront processes (like development) effects schedules provided for testing. The onus of delivering a quality product finally rests with testing team with all the constraints.

How can we, as testers, keep up with this kind of stress? How can we improve our testing skills to ensure that we stay relevant and provide the best possible value to the development?

We present a simple set of practices that can make you skilful at handling the testing tasks. This is not a one-off step. You need to keep at these and practice them daily.

Learn to Plan

You may be one of the people who considers planning as a bore. All said, jumping into a task has it’s own adrenaline rush. Planning seems to be an inconvenient step before the fun starts. However, planning can be a great help to any one. 

Brian Tracy 

Every minute you spend in planning saves 10 minutes in execution; this gives you a 1,000 percent return on energy!

  • Planning increases efficiency. Planning allows us to use our time efficiently.
  • Reduces risks of missing out on important tasks.
  • Allows you to see where you are and how much more left to reach your goal at a glance.
  • It gives you a modicum of control and reduces the stress.

One of the best known planning methodologies for individuals that is known to work is David Allen’s Getting Things Done. There are lot of articles and tutorials available online that can help you learn planning using GTD. The following are some of the resources:

Read - a Lot

We can’t stress the importance of reading. We do not mean only the Software Testing related books – though you should read those also. Why is reading such an important skill?

Reading Develops mind

Reading is important because it develops your mind. What is our brain - it is a muscle. As with any other muscles in our body the brain also requires exercise. Understanding the written word is one of the ways to build the brain muscle.
As a side effect of reading, you also learn to listen. Often, lack of listening skills causes misunderstandings that leads to catastrophes. Reading helps us in increasing our ability to understand others.

Discover new things with Reading

This is an information age. We have abundant resources available on internet. Reading is the way to take advantage of them.

Reading Improves imagination and creativity

Have you heard the phrase "the book is better than the movie."? A visual medium like movie shows the imagination of the director. Where as a book allows us to imagine it ourselves. Reading improves our imagination and hand-in-hand our creativity.

Enhance vocabulary and communication skills by Reading

Reading allows us to learn new words. Learning to use and understand words in a context improves our communication skills. Communication is one of the primary testing skills that we should develop.

With so much going on with reading, it is unwise for us not to make use of this skill. Keep aside a time (if you travel using public transport to work – that might be a great time) for reading. Take a book, any book, and start reading now. Keep at it and you can feel the change that comes along with better communication and perception.

Keep a Work Journal

Keep a Work Journal

One of the beauties of software development is that we reinvent wheel – a lot. The same steps you used for an earlier product to find a bug may, if repeated, find a bug in the current product. Keeping a work journal not only helps you to chart your learning journey, but can also help in reusing your knowledge. What do you note in a journal?

  1. Write about your activities. What did you do today?
  2. Note your decisions. Why did you try that method instead of something else?
  3. Record your learnings. What did you learn today?
Start today and every day, note down at least five points. When you revisit the journal, you will be pleasantly surprised.
 

Learn to Write Detailed Bug Reports

If there is one testing skill that is critical for our success it is to create good but reports. Always write clean and detailed bug reports. The people who will read your bug reports will not understand or see what you did to expose that bug. When you write in detail, you allow the rest of your team and the developers to save an enormous amount of time by not having to guess any part of your environment.

A bug that can't be reproduced can also not be fixed. Having a detailed bug report helps in reproducing the bug.

One of the ways to improve our testing skill to write good bug report is to read old bug reports along with developer comments. One such resource is BugZilla maintained by Eclipse. Being one of the most used and actively developed products, eclipse bug reporting is very active. Looking at some of those reports and reading the followup discussions gives you ideas about how you yourself can write good bug reports.

Learn a Programming Language

“Do testers need to know programming?” is a hot topic of discussion on various forums. You can see some of the discussions here, here and here.

We strongly believe that testers need to understand programming concepts, have working knowledge of (some) scripting languages and it is a great advantage to know a programming language. Knowing programming, understanding the technology stack, ability to discern what goes in software development helps you become a more skilled tester.

You get many benefits by learning to code.

  • Even if you are performing manual testing currently , at some point automation may be needed. Be ready when the opportunity knocks.
  • Knowing some shell scripting simplifies your efforts. Specifically knowing text processing commands like grep, sed, awk etc. tends to be very useful for verification of text based results.
  • You may need to set up different test environments. Your knowledge of programming and technology stacks helps you in these tasks.
  • You may find it beneficial to automate some parts of the testing, even if it is manual.

If you are already comfortable using shell scripting and commands, you can start with a scripting language like python or ruby. Selenium and Selenium based libraries are becoming de facto standard for web application testing. Learning Java surely helps you as you move forward.

There are many online tutorial that can help you in learning one of the languages.

More Ways to Improve Testing Skills

Sharing is Caring

Testing is a team effort and not a competition with your team members. Make sure you share your progress on a regular basis, to ensure optimum testing effort. Remember, a tester is only as efficient as the team.

There are no stupid questions

Learn to analyse your test results thoroughly. Testing is a process. Do not ignore the test result. The final test result may be ‘pass’ or ‘fail’ but troubleshooting the root cause of ‘fail’ will lead you to the solution of the problem. Ask yourself what question your tests are answering. Your testing techniques are a vault of answers. Once you understand what the question is, you just need to pick which answer makes the most sense. When you create a process, you end up reaching your desired result faster. Filter the techniques that make little sense and apply the ones that do. If those don’t work then you can go back and try the less obvious techniques.

Above all, Don’t Quit

Learning new skills and honing up old skills is a long drawn process. Do not be disheartened if your progress was slow or the results are not immediately visible. Persistence always gets the results. Need a motivation? Look at Abraham Lincoln.

Mike Schoultz 

Let me share Lincoln’s life history with you. This was a man who failed in business at the age of 21 ; was defeated in a legislative race at age 22; failed again in business at age 24; overcame the death of his sweetheart at age 26; had a nervous breakdown at age 27; lost a congressional race at age 34; lost a senatorial race at age 45; failed in an effort to become vice-president at age 47; lost a senatorial race at age 49; and was elected president of the United States at age 52.

Would you dare call him a failure? He could have quit anywhere along the line. But to Lincoln, defeat was a detour and not a dead end. And a great source of learning.

Think positive. Start testing the application with the intent of finding bugs/errors. Don’t assume that there won’t be any bugs in the application. If you test the application with the intention of finding bugs, you will definitely succeed in testing the application thoroughly. Do not be disheartened by not finding bugs. Your development team did a great job. Congratulate them.

A Shout for MarathonITE

Automating Functional Tests with MarathonITE 

Marathon Integrated Testing Environment – MarathonITE, is an affordable, easy-to-use, cross-platform test automation tool for Java/Swing™, Java/FX™ and Web applications. Using MarathonITE you can quickly automate your daily tests.

Close Menu