Here are some of the best testing practices I learned by experience:
1) Learn to analyze your test results thoroughly.
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. Testers will be respected if they not only
log the http://www.softwaretestinghelp.com/why-does-software-have-bugs/ - but also provide solutions.
2) Learn to maximize theevery time you test any application. Though 100 percent test coverage
might not be possible still you can always try to reach near it.
3) To ensure maximum test coverage break your application under test (AUT) into smaller functional modules. Write test cases on such individual unit modules. Also if possible break these modules into smaller parts.
E.g: Lets assume you have divided your website
application in modules and ‘accepting user information’ is one of the
modules. You can break this ‘User information’ screen into smaller
parts for writing test cases: Parts like UI testing, security testing,
functional testing of the ‘User information’ form etc. Apply all form
field type and size tests, negative and validation tests on input
fields and write all such test cases for maximum coverage.
4) While http://www.softwaretestinghelp.com/web-testing-example-test-cases/ - writing test cases ,
write test cases for intended functionality first i.e. for valid
conditions according to requirements. Then write test cases for invalid
conditions. This will cover expected as well unexpected behavior of
application under test.
5) Think positive. Start testing the application by
intend of finding bugs/errors. Don’t think beforehand that there will
not be any bugs in the application. If you test the application by
intention of finding bugs you will definitely succeed to find those also.
6) Write your test cases in requirement analysis
and design phase itself. This way you can ensure all the requirements
are testable.
7) Make your test cases available to developers prior to coding.
Don’t keep your test cases with you waiting to get final application
release for testing, thinking that you can log more bugs. Let
developers analyze your test cases thoroughly to develop quality
application. This will also save the re-work time.
8 ) If possible identify and group your test cases for regression testing. This will ensure quick and effective manual regression testing.
9) Applications requiring critical response time should be thoroughly tested for performance. Performance testing is the critical part of many applications.
In manual testing this is mostly ignored part by testers due to lack of
required performance testing large data volume. Find out ways to test
your application for performance. If not possible to create test data
manually then write some basic scripts to create test data for
performance test or ask developers to write one for you.
10) Programmers should not test their own code. As discussed in our http://www.softwaretestinghelp.com/developers-are-not-good-testers/ - basic unit testing of developed application should be enough for
developers to release the application for testers. But you (testers)
should not force developers to release the product for testing. Let
them take their own time. Everyone from lead to manger know when the
module/update is released for testing and they can estimate the testing
time accordingly. This is a typical situation in agile project
environment.
11) Go beyond requirement testing. Test application for what it is not supposed to do.
12) While doing regression testing use previous bug graph
(Bug graph - number of bugs found against time for different modules).
This module-wise bug graph can be useful to predict the most probable
bug part of the application.
13) Note down the new terms, concepts you learn while testing. Keep a text file open while testing an application. Note down the testing progress, observations
in it. Use these notepad observations while preparing final test
release report. This good habit will help you to provide the complete
unambiguous test report and release details.
14) Many times testers or developers make changes
in code base for application under test. This is required step in
development or testing environment to avoid execution of live
transaction processing like in banking projects. Note down all such code changes done for testing purpose and at the time of final release make sure you have removed all these changes from final client side deployment file resources.
15) Keep developers away from test environment. This
is required step to detect any configuration changes missing in release
or deployment document. Some times developers do some system or
application configuration changes but forget to mention those in
deployment steps. If developers don’t have access to testing
environment they will not do any such changes accidentally on test
environment and these missing things can be captured at the right place.
16) It’s a good practice to involve testers right from software requirement and design phase.
These way testers can get knowledge of application dependability
resulting in detailed test coverage. If you are not being asked to be
part of this development cycle then make request to your lead or
manager to involve your testing team in all decision making processes
or meetings.
17) Testing teams should share best testing practices, experience with other teams in their organization.
18) Increase your conversation with developers to
know more about the product. Whenever possible make face-to-face
communication for resolving disputes quickly and to avoid any
misunderstandings. But also when you understand the requirement or
resolve any dispute - make sure to communicate the same over written
communication ways like emails. Do not keep any thing verbal.
19) Don’t run to do high priority testing tasks.
Prioritize your testing work from high to low priority and plan your
work accordingly. Analyze all associated risks to prioritize your work.
20) Write clear, descriptive, unambiguous bug report. Do not only provide the bug symptoms but also provide the effect of the bug and all possible solutions.
Don’t forget testing is a creative and challenging task. Finally it
depends on your skill and experience, how you handle this challenge.
------------- http://www.quick2sms.com - Send Unlimited FREE SMS to Any Mobile Anywhere in INDIA,
Click Here
|