People have different definitions about testing. Some say testing is just about UI verification. And some say testing is just finding defects. But I tried to categorize the whereabouts of testing in the below 10 points.
1. Testing is about quality
Testing is about providing a quality product to the customer
Quality in terms of usage
Quality in terms of look and feel
Quality in terms of data integrity
Quality in terms of security
2. Testing is about ideas
Any given application can be tested in many ways. If you try out, each individual will propose a different approach and idea. We as a tester have to analyze and pick the most suitable approach.
3. Testing is about thinking like a customer
This is one of the common saying that we get to hear almost every day :).
When we test an application, we should always think from a customer (who will use the application) point of view. Relate the flows which ideally the customer would perform on the application. Check to see if the labels/text for messages and warnings are user friendly so that the customer understands the issue if any.
4.Testing is about coverage
More coverage means more improved quality product.
List and execute all the test combinations. Try to uncover all the odd combinations that the customer is likely to do. Prepare requirement traceability matrix. I am sure not all do this, but prepare one formally or informally. List down all the boundary conditions and negative test cases. Prioritize all the test cases. Do at least one cycle of regression of Priority-1/Priority-2 test cases before completing the QA cycle.
5. Testing is about finding defects
Defect is described as a deviation of actual result from the requirements. This holds very true in case of testing against requirements. When checking for negative scenarios or doing ad-hoc testing we still find defects.
Defects should be raised as soon as they are found and with all relevant data. People tend to miss out raising defects assuming that they are minor or just UI. Every valid defect which gets fixed adds to the quality of the product.
Quality in terms of usage
Quality in terms of look and feel
Quality in terms of data integrity
Quality in terms of security
2. Testing is about ideas
Any given application can be tested in many ways. If you try out, each individual will propose a different approach and idea. We as a tester have to analyze and pick the most suitable approach.
3. Testing is about thinking like a customer
This is one of the common saying that we get to hear almost every day :).
When we test an application, we should always think from a customer (who will use the application) point of view. Relate the flows which ideally the customer would perform on the application. Check to see if the labels/text for messages and warnings are user friendly so that the customer understands the issue if any.
4.Testing is about coverage
More coverage means more improved quality product.
List and execute all the test combinations. Try to uncover all the odd combinations that the customer is likely to do. Prepare requirement traceability matrix. I am sure not all do this, but prepare one formally or informally. List down all the boundary conditions and negative test cases. Prioritize all the test cases. Do at least one cycle of regression of Priority-1/Priority-2 test cases before completing the QA cycle.
5. Testing is about finding defects
Defect is described as a deviation of actual result from the requirements. This holds very true in case of testing against requirements. When checking for negative scenarios or doing ad-hoc testing we still find defects.
Defects should be raised as soon as they are found and with all relevant data. People tend to miss out raising defects assuming that they are minor or just UI. Every valid defect which gets fixed adds to the quality of the product.
6. Testing is about simplicity
There is no point in building an application which is of high complexity and of no use. Rather we should suggest for simple design which even a lay man can use.
Suggest for enhancements in the system. You can suggest improving the layout, labeling, button names and messages. Users will always prefer using a system which is less complex and easy to use and understandable. Simpler the better.
7. Testing is about collaboration
Testing is an activity which cannot be performed all alone.
It always has to be in collaboration with the other teams like requirement, design, development, process etc.
Imagine we raised a defect and could not convince other team to get that fixed though it is valid. In this case we did not do our job completely. We should not be easily convinced with any justification from other teams unless it is documented and reviewed by stake holders.
8. Testing is about documentation
Documentation plays a major role in testing phase.
Document the test scenarios, test cases. Prepare traceability matrix. Prepare checklist of test activities done. Prepare checklist of UI testing done. Capture all the screenshots/evidences.
These documents will be very useful in future for reference in case someone has to do a round of testing again. Document all the defects in any means Microsoft Excel or defect management tool. Document the test data, environment details etc. as well.
9. Testing is about time management
Defect found later in test cycle impacts the cost and time. If we can uncover more critical defects initially in the test cycle, the more time we get to test it better.
10. Testing is about attitude
This may not be the last point, but surely attitude is a must for a good tester. You should have the right attitude in a right way to do your job right.
9. Testing is about time management
Defect found later in test cycle impacts the cost and time. If we can uncover more critical defects initially in the test cycle, the more time we get to test it better.
10. Testing is about attitude
This may not be the last point, but surely attitude is a must for a good tester. You should have the right attitude in a right way to do your job right.
No comments:
Post a Comment