MY PERSPECTIVE ON SOFTWARE TESTING

Is Testing just a part of the Software Development Life Cycle?


“You might wanna test it before you buy it !” is not just a phrase.

I would say testing is part of who we are. We all do testing on a regular basis, but never really knew that we were all testers. The primary goal of being in any business would be to sell our product satisfying the needs of the client and of course to make the profit. I believe that everybody has an analyst, a developer and a tester in them..because we all think before taking every little decision in our life starting from buying a pen to buying yourself a new car. As software testers, we are in business because all the companies in the industry want to deliver well-tested products to their clients.

What does it take to be a tester?


I would say a lot of what if’s!!!.

When I switched my career as a Lecturer In Electrical Engineering to Software Testing, I hardly believed in the idea of how interesting and real this field could be. As time passed I realized all that takes to be a tester is the right attitude. And that would be the attitude of a customer, or as in the technical terminology the ‘End User’.

Once you are in the shoes of the customer, it is hard to miss the defects while testing. You would never wish to invest your money in a product that you don’t trust, do you? If you can imagine it is your money at stake, lots of what if’s would come up and that is what we convert into test scenarios and test cases eventually. There are a number of tools to support testers in the market today. Considering that, we are in complete heaven with such cutting-edge technology and tools surrounding us.

TESTING TOOLS TO MAKE YOUR LIFE EASY!

Let’s discuss more the tools which can make testing easier for you…

WEB APPLICATION TESTING:

Deciding on what tool works best for your team depends, on the type of testing to be performed and the kind of features you expect from the product.
There are a million tools available for web application testing, providing test suites which can be integrated with your code repositories such as Github or your bug tracking tools like Jira or your deployment systems like Jenkins, making writing and maintaining your test scripts a little bit easier. Some of which I have tried is TOSCA, Katalon, and Squish. But my all-time favorite is not any test suite, but it is Selenium Webdriver which is an excellent open source tool to start your test trials. Knowledge of a programming language such as Java, Ruby or Python is absolutely necessary to use Selenium WebDriver. Selenium Grid provides an excellent tool for cross-browser testing too.
If you can club Selenium with Cucumber, you have for yourself an excellent match for BDD( Behavior Driven Development). Cucumber is one tool which can be easily used by business managers to write test scenarios in the Given, When, then format which anybody can easily understand.

WHY SHOULD I GET MY HANDS DIRTY WITH CODE

You need to be a coder to be a tester. Do you hear this a lot?


If you do, trust me you are not alone and I can tell you a perfectly reasonable explanation for this statement to make sense. As a tester, your life revolves around a lot of stuff that you end up doing repeatedly. And when you end up testing the same scenarios to be tested on a regular basis, over and over again, repetitiveness makes your life and job boring. Guess what!! we have a solution. That would be automating your tests.

Why would I automate my tests, isn’t that tough???


I can give you one other good reason to learn to code. If you are a manual tester, have you ever thought what’s it really that you are testing? Its all a coded application developed by a developer following the business requirement document. Have you ever felt, I need more than this? Then this is what you were missing. If you learn to code, all your work will start to make more sense. You will never ever feel less than a developer who is the real father of the application if you start automation testing.

Where do I start???


If you feel intimidated by seeing a long piece of code, I can guarantee you, it really isn’t as bad as you think it is. A big part of automating your tests includes coding. One and the only way to learn to code is to start coding. Imagine you want to fly a plane and you know all about the mechanics of the flight. But you cannot really claim to be a pilot unless and until you have been in a cockpit..
Get yourself acquainted with at least one programming language and principles of OOPS (Object Oriented Programming). If you get your hands dirty with the code once, learning automation shouldn’t be much trouble. I started off with java as I had intentions to learn automation testing tool Selenium Web driver. And it did pair really well for me. Once you know the basics of Object Oriented Programming, your automated test scripts will always maintain good code quality which meets the industry demands. As you get yourself used to seeing codes, trust me nothing is really that bad.