Skip to main content

All About of Testing

I have completed 10 years in testing.

I got a job in testing by chance but not by a choice. But I respect my job than any other.

I can proudly say, I learn something through out my testing career.

I am here to provide some tips and advices on testing.

How to write test cases as simple as it is?

Since I work on a mobile apps, in general, there 3-5 screens to complete any transaction flow.

So, I prepared this 5 thumb rule for writing test cases for each screen.
Entry point
UI of rendered screen
Validation of each fields
Negative Navigation flows like back, cancel
Business rules

This helps to cover the high level of test cases writing and one can easily develop low level of test cases from it.

Eg. For validations, you can cover all the null, zero, min and Max value depends on the field type.
Eg for selection, null/blank validation
For amount, it covers all of the above.

How to cover testing on multiple devices?

Since the mobile market is vast for both Android and iPhone, covering all set of mobiles is not possible.

I can give two approaches
Covering whole set of test cases in one device and a sanity on couple of devices.
Covering portion of test cases in multiple devices, like 1-10 test cases in one mobile and next set in another mobile and so on.

How to calculate test cases execution time?

On an average, a junior resource can execute 5-6 test cases in an hour(depends on complexity)

So, in a day, one can execute 40 test cases. 

This is not standard, but based on my experience, one can execute 40-50 test cases in a day.

How to excel in testing career?

I believe, every tester should gain a domain knowledge.

This will help to write test cases, while execution and you can think like an end user.

There are so many repetitive tasks in any job.

I tried to automate those things.

Eg., I have created a template writing 40 test cases in 4 min.

Some tips for a tester:

Follow my LinkedIn Profile for few.

How many types of testing careers?

There is no software without a tested ok. Even if it hit the stores, it will be at stake due to personal user experience.

There are wide wings for a testing career, but this top 3 careers rule over the world.

Automation(Selenium)
Performance(jmeter, load runner)
Penentration(burp suite)

I didn't mention here the manual testing because it is a base for everything.

You cannot reach 10th floor, if you don't build ground floor.

Testing Posts from Linkedin:

How to write functional test cases for mobile banking in a simple way?


I always suggest my peers to remember this thumb rule for coverage.

1. Touch Point
2. UI
3. Validation Errors
4. Navigations
5. Business Rules

First cover the test case from where you were landing on.
Eg. Coming from hamburger.

Second test case : UI of the landed screen.

Third, cover validations for each field present on the screen
Eg, Null, Min, Max, BVA etc.,

Fourth, Navigation CTA's
Eg., Back, Cancel etc

Fifth, if any business rules apply.
Eg., Insufficient source amount etc.,

Note:
The last CTA button(continue, submit etc) will be the touch Point for next screen.


How to write an effective test case?


Many people write the test case in parts as description, steps and expected result.

This takes most of the time while executing it.

Here is the simple way to write it.

{Steps flow} : Ensure the {expected result} when the user {what he did}

Let's take an example,

Suppose we need to write test case for min amount validation in funds transfer.

You can write as
"Hamburger :: Funds Transfer :: Ensure the 'Please enter amount between 1 to 50,000' validation error msg displayed when the user tries to enter less than min amount(eg. 0.1)".

This gives the whole picture on
📍Steps to the flow
📍Expected Result
📍How to do

This will help while executing test case by reading description itself.

And no need to look into steps and exp result separately.

Have you ever used Mind Map as a QA?


You can use mind map for

Taking Notes
Gathering requirements
Create a flow for a functionality

There are many free apps available.
Specifically I use coggle.it

How much time you take for updating daily time sheet?


For me, it will take 20-30 min/day.

Now we have automated logging the time sheet.

At the end of every week, we would run the automated script.

It takes 5 min to update the time sheet for the whole week data of a single resource.

Note : We take 10 min to update in excel.


******

Thank you Akalya Balasubramanian for making this possible.

******

How much time we are saving now?
Saving 50% of time.

By Manual :
25min x 5 days = 125 min = 2 hrs/week

By Automation:
10min x 5 days = 50 min + 5 min = 1 hr/week

So, we are saving 1 hr/resource/week.

Let's see from an organisation level, of having 300 employees.
300hrs = 37 man days
Saving more than a month time.


Personally, this is helping me where my large amount of minimal tasks to be logged.

How much time, will you take for writing test cases of an application form with 10 fields?

You can write less than a min, with the work sheet.

Even you can create for yourself.

I did a sample one.

******
What is your take away?
Calculate how much time will you take for writing 50 test cases.

How you are using Trello?


Trello is famous for its Kanban/Agile boards.

Besides you can also use for

Maintaining common data available to the team:
New Joinees often face problem with the necessary information, like test data, client contacts, bridge details etc.,
We prepared a common board where all the data will be updated and available for every one.

Tracking your STLC Cycle:
For each step in STLC, there will be different mile stones. You can track the projects with numerous modules easily where each module stands now.

Tracking your learnings:
I specially like using Trello for tracking my learnings.
This helped me to learn and track, while learning ruby-automation.
Listed everything about Ideas, pending items, tips, keywords etc.,



Will you forget the steps and it becomes as not reproducible bug in testing?


A special quality should have by the testers is quick recollection..

If a bug has identified and not reproducible by the second time.

Stop your testing.

📍Try to recollect the steps.
📍Note it
📍Now try to repeat the steps.

In the first place, train your brain to recollect the things just before a few seconds.

Try this game. It helps you to reproduce the defects.

How to organize your office work in an efficient way?


Being a lead, we need to handle different things and sometimes we skip/miss the important ones.

Here are my steps, how not to miss anything and organize your work?

9:30 AM - Listing down today's pending tasks. It takes hardly 15 min.

10:00 AM - From Status meeting update, will add some more to the list, since these items planned for today.

Post that, I focus on the priority items as in my list.

And complete as one-by-one in the list.

Any new tasks in mid of the day, will add to the list[comes from mails].

Eg.,
Test cases review for xxxxxx
Defects verification for +++++
Review call for #####
Test plan preparation ------

Since I use a notepad++, I put a dot post the completing the tasks.

This boost me to complete tasks asap by EOD.

The incompleted tasks will carry forward to the next day.

Tail next?


Hope your daily stand up meeting is not different as everyone.

But one thing bothered me.

Order of names.

Initially, we listed the names and every time someone prompt the names from the list.

But what if that person has moved to another project or on leave?

So, I found "Tail Next"

Tell the next member name, once you have completed your status update.

I don't say, this is the best approach.

But, this is one way, and independent approach.


As a QA, What do you do in Requirement Analysis?


There are two most important people on the biz requirements.

One is BA and another is QA.

As a QA, I insist everyone [not only QA, including dev team], understand the client requirement in the first place.

What is the take away of the customer from the software we are going to develop?

It may be a simple mobile app which allow the users to make a transaction as simple as it is.

Beleive this will help make the whole STLC or SDLC fall in place.

At the end, the customer satisfaction is important.

What you do if you found gap in Requirement Analysis?


A gap is there in every cycle.

It is one's duty to fill it and take the customer satisfaction at the end.

As said, it is QA's duty to chew and digest the requirement as in specification document.

List out your clarifications and queries and setup a call with your BA.

This will help the SDLC cycle.

What should cover in Test Planning document?


Test plan should answer these questions.

What, How, Where and When.

In detail,

What to be tested? - Test Scope
How to be tested? - Test Strategy
Where to be tested? - Coverage & Env details
When to be tested? - Testing Schedule

If you answer these questions, your test plan is ready.

Organize your Desktop:


Some people's desktop feels like a Trash. Even sometime back, my desktop was same.

And I thought how to organize it?

***

I used Vertical Stripes as a Wallpaper and named each stripe.

Under each stripe, will place the respective file while creating/saving.

After each stripe fills, we can copy to the respective folders[video explains this].

An organized files is easy to move and time saving.

Now my desktop is clean.


How to simplify your test cases writing?


Assume you have three screens in a flow

High level test cases for Screen 1.

1. Ensure you land on the screen-1 when user click something.
2. Ensure UI of the landed screen-1 is as per design.
3. Validations of each field in the screen-1.
4. Navigation flows for Cancel, Back etc., from the screen-1.
5. Business use cases, if any for screen-1.

Note, if you click on CTA button in the screen-1 takes you to the screen-2, this will be the first test case for screen-2 and then continue the same journey.

These 5 cases will help you to cover the test cases without any miss for functional testing.

From there, you can develop low level test cases.

Eg., Validations should be covered for
Null, Less than min, More than max, invalid etc.,

How to quickly execute your test cases?


This is the quite easy part of testing, if you aware about the module and test cases order.

In the last post, I discussed about the order of test cases.

In the same way, you need to execute the test cases.

Come from touch Point
Take screenshot & Hold your UI at last
Check validations in order
Navigations
Business rules

Update the status in a single shot.

Note : Revise the FR before proceeding any testing.
The most hectic task in testing is raising a bug, but at the same time, it is a religious task for QA.

How to log a defect in minimal time?


📍Cloning is one of the option.
📍Creating a defect template
📍Copying reference from test case

Will see in details about these in the next post?

So, how you will log a defect?

Bugs.....Bugs.....Bugs


There is no software without a bug.

But as a QA we need to find the bug as early as possible.

There is a concept of cost for the bug.

A bug found in CUG stage is more costlier than in development stage.

How?

A bug found in CUG impacts its customers and lose the business.

And it requires a huge effort to come back to fix it, tested it SIT, then move to UAT, getting a Sign Off and then to production.

Time to fix impacts the customers.

Found as many bugs in QA.

Habit Stacking for QA


I got this idea whenever we get a salary we will one round of regression testing on the latest build.

What is difference between Error, Defect and Bug?


Error - A mistake in coding is called error

Defect - If a tester found the error, it is called defect

Bug - If the developer accepted the defect it is called Bug

Defect Logging template


Description
Device/Platform:
Credentials Used:

Reproducibility: 5/5 times

Steps to reproduce:

Expected Result:
Actual Result:

What is your defect Logging template?


Another easy way to log a defect.

In the last post, I have shared the defect template.

If you observe, you can see the following things are common for both test case and a defect template.

📍steps to reproduce
📍 Expected Result

So, these two things can be copied and reuse for the defect logging.

Tagging a defect type.


As a QA, we did log number of defects.

But, did you ever analyse the data like

👉what type of defects you logged, UI or functional?

👉how many are real and worthy defects?

👉how much quality did you add to the project?

Before analysing the data, you should have parameters in place.

Add a correct
📍priority and severity to the defect
📍type of defect like UI/functional
📍resolution from dev team

Ensure don't miss the above data.

The QA psychology while finding bugs.


People often experience that when they found couple of bugs in any module, they stop testing.

Assuming, No more bugs.

This is only a misconception of ours(QA).

Don't stop your testing after finding few bugs.

Take a break in your testing.

Kick start again to find more bugs.

It is the psychological satisfaction after finding atleast one bug.

But there are many underlying bugs, if you go deep.

Dig them.


Each profession will train you a particular habit of thinking.


Post late working hours, I attracted to the new name "taste on wheels" and went to eat for a dinner.

Suddenly an officer came up and finding out the safety measures of the people who are cooking on the wheels.

📍If cylinder burns how the people on vehicle escape.
📍Where is the fire extinguisher?

These questions I never thought as a general person or a professional.

So, for a QA profession, what is your brain trained for?

Today, we finally find the way to get the defaulters list of timesheet.


We have automated using selenium to get the no of hours logged by each individual of project members.

We had a successful demo and need to align few things to pass in sanity test.

I wish we should never be in the defaulters list.

Although we have numerous types of testing.


There are three types of testing commonly and widely used in Manual.

📍Sanity Testing
📍Functional & UI Testing
📍Regression Testing

We have this approach,

First, we did a sanity check for every new build.

Functional & UI is an incremental testing.
Two persons perception will help to find more UI issues.

Regression testing is a one-time planned activity after above testing.



Did you hear the new type of testing - Shift Left?


As in waterfall or any process, testing will kick start post completion of development.

There is no involvement of QA until all the pieces of product are integrated or moved to QA Environment.

The Shift Left is the process where the QA will start testing one step prior in the SDLC.

Like while in development itself, QA will help development team to find the potential/UI bugs.

This will decrease the pressure in the further cycles.

Did you feel this process helps to get the valuable product?

One tip from my Manager.

"Never ever test without test cases, because you have no proof what you have tested."

It is the proof what you have covered and tested.

The further complications are better tackled with a proof.

Reporting:


Till now we have completed till test cases execution in the STLC process.

The last and but not least, REPORTING phase.

This is where most people fail to project what they have done.

Here are tips:
🎯 A template mail for daily execution of test cases.
🎯 Bug reports - How many potential defects identified and present status.
🎯 Weekly status reports of the project.

These are the main to convey about your work.

You are open to comment, if I missed anything.


One of the best thing I tried Google Data Studio for the QA reports.


It gave a nice view of the Monthly Status Reports and also Over all view of the project ina given time.

It is not a complex to learn GDS.

Download Jira excel
Upload to GDS
Take any template
Map the fields

I recieved an acknowledgement from Manager this is awesome.

You can also try.

Note : I cannot post the reports on this media.

How to prepare Verification Reports quickly?


Verification Reports are the exit criteria of any cycle.

It can be a proof while giving hand off to the next cycle.

PPT's are easy to create the verification reports than excel.

Another tip, use a blank page and drag and drop the images.

This will fit exactly to the size of the ppt and view will be simple.

This doesn't require no more resizing to fit into the ppt.

Are there any methods you want to share?

Till now, I have shared my knowledge on STLC.

Hope this helps atleast few of my QA peers.

I want to share a few case studies too.

Here is the first,


We read about Error, Defect and Bug?

Then, what is an issue?
Is the defect and issue are same?

Give a thought and put it in comments.

There was a common question from everyone about testing.


Why we didn't test it? or
How we missed it?

Testing a software require multiple skills.

In one or two iterations, we cannot get a zero-bug software.

But to avoid escaping potential defects.

👉Covering all use cases in testing
👉Get a peer review
👉Get also reviewed with BA & Leads to fill any gaps.
👉Update the test cases

This will help in minimising the defects in further cycles.

What is the most critical bug you found in your QA career?


I think this is the most asked question in any interview.

But to be frank, If I ask myself the same question I don't remember anything now. And everytime it changes.

Or I need to refer to issues list which was raised by myself.

But be prepared with the list.

If you remember any outstanding bug raised by you, put it in comments.

In the mean time, I refer my list.

What you do, if someone asks to send the report in no time?


This happens sometimes we need to share a report to the client in less time.
And by the time we have not completed it.

How to handle this situation?

Finding urgency
📍Highlight if it takes sometime to complete to share the report and urge to share in some time by an hour.

Half Report
📍If they insisted to send immediately, share the report, covering major points.

And you can also put a point, we will share the remaining points in a couple of minutes.

It is like half satisfaction.

Comment if you have any other ideas?

One tip for the UI related test case.


Usually we try to write, each icon placement as in the wireframe.

And we ends up writing 5-7 test cases for a single page.

Instead, try to write single test case as
"Ensure UI is same as in wireframe".

This lessen your effort while writing test cases and also when executing it.

A more test cases doesn't mean more qualifying the product.




Comments