Lessons learned (the hard way) in software testing
- khyati sehgal
- Jul 18, 2016
- 2 min read
What we speak is what we have learned. There are some very basic simple rules which we can follow as we grow as a Quality Analyst. In this post, I will share a little of my experience.
Don’t try to test everything, or even close to everything.
You really have to factor in a lot of time for test case maintenance, even if your tests are well-written. Even it looks small, never underestimate, take time, and think of scenarios that are hidden beneath. Some cases could be unrelated some can be deferred but yes think and overthink, both in a constructive and destructive way.

Keep tests as small as possible
Test one thing at a time. On the same note, do not try to iterate over all data, unless you are trying to ascertain which cases to cover. It will just cost you test-execution time, and again test case maintenance. Eventually, you will either cut down the test iterations, or you will give up and rewrite it.

Businessman with hands behind head, sitting next to a stack of documents on the desk
Separate your positive and negative tests
Reading long-winded if/else branches or crazy, unnecessary loops when you’re already annoyed at a failing test just makes it worse. Do not couple things that really should not have an impact on each other. For instance, do not repeat search tests while logged in and logged out, unless you have a good reason. The same goes for user types: while it is seemingly noble to try to cover different user types, do not test everything again with those. Just the cases where functionality differs safeguard your tests against slow, problematic staging servers, but do not go so far as to mask problems with large timeout values.
Fail early in your tests
If you have a problem early on, assert as soon as possible, with useful error messages; don’t keep executing a bunch of tests that will just fail spectacularly.

Keep a track of all the things
Never miss any logs coming from the server or on the console. Be it browser log, always keep an eye on what you have observed, how it happened, and consequences.
Deadlines
With work, always comes a deadline which is a means to achieve the target. I believe work, quality, and timelines always go hand in hand. So keep a deadline of your own which should be not less than a day before the actual deadline.

Keep a note of your learning
One should always check his/her own growth. By each passing day track your own learning. Write it somewhere, check related posts, try to understand the requirements more deeply, and read/ask more about it.
Grow according to your own passion
On the job learning is the best learning, one should always go in the direction of passion. What you want to learn, work on, that all are the factors that help you in growth. just follow yourself.

QA job is the most innovative job, wherein you can learn anything be it development(coding), DevOps(Continuous development), BA(Business analyst), proxy PO(Product Owner), End-user, etc. So you shall be dynamic as well as alert and learning should never stop. And I tried to list down some point which can help you in learning and growing with pace.
Hope you like it!
Comentários